ゲーム装置、ゲームプログラム、ゲーム制御方法およびゲームシステム
【課題】新規な、ゲーム装置、ゲームプログラム、ゲーム制御法およびゲームシステムを提供する。
【解決手段】ゲーム装置10はマイコンを含み、マイコンはゲーム装置10が閉じられたスリープモードで、ユーザがゲーム装置10を持ち歩くと、加速度センサからの加速度データが示す加速度の大きさに応じて歩数をカウントする。この歩数は獲得コインに変換される。ゲーム装置10で実行される複数のゲームのそれぞれでは、獲得コインを用いて、特殊アイテムを購入したり、特別コースでのプレイを許可したり、ヒントを表示したり、ゲームを早送りしてプレイしたりする。
【解決手段】ゲーム装置10はマイコンを含み、マイコンはゲーム装置10が閉じられたスリープモードで、ユーザがゲーム装置10を持ち歩くと、加速度センサからの加速度データが示す加速度の大きさに応じて歩数をカウントする。この歩数は獲得コインに変換される。ゲーム装置10で実行される複数のゲームのそれぞれでは、獲得コインを用いて、特殊アイテムを購入したり、特別コースでのプレイを許可したり、ヒントを表示したり、ゲームを早送りしてプレイしたりする。
【発明の詳細な説明】
【技術分野】
【0001】
この発明はゲーム装置、ゲームプログラム、ゲーム制御方法およびゲームシステムに関し、特にたとえば、プレイヤの操作に従ってゲームを進行させる、ゲーム装置、ゲームプログラム、ゲーム制御方法およびゲームシステムに関する。
【背景技術】
【0002】
従来のこの種のゲーム装置の一例が、特許文献1に開示されている。この特許文献1のポイントシステムでは、歩数をポイントに変換し、ポイント数に応じて複数のサービスから希望のサービスを選択できる。具体的には、利用者が電子歩数計を身につけて歩くことによって歩数が計測され、携帯電話に電子歩数計を接続すると、測定された歩数がWEBサーバに送信され、ポイントが付与される。このようにして付与されたポイントを蓄積し、蓄積したポイントを、フィットネスクラブの会費の割引やクラブ内でのショッピングや飲食にかかる費用の割引に使用したり、インターネット上の特定サイトでの割引に使用したり、通常の店舗での割引に使用したりする。
【0003】
また、この種のゲーム装置の他の例が、特許文献2に開示されている。この特許文献2のゲームシステムでは、複数の歩数計でそれぞれ計測された複数の歩数データを無線通信によりゲーム装置に送信することで、ゲーム装置で複数の歩数データを用いた種々のゲームが実行できる。たとえば、同時間に歩いたプレイヤの数によって内容が変化するゲームや、複数のプレイヤの歩数の合算値によって内容が変化するゲームなどが開示されている。
【特許文献1】特開2003−316905号公報
【特許文献2】特開2009−254539号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、特許文献1のポイントシステムでは、歩数計で測定された歩数に応じて蓄積されたポイントをサービスの割引等に使用するものであり、ゲームに利用するものではない。
【0005】
また、特許文献2のゲームシステムでは、歩数計で測定された歩数を用いて種々のゲームを実行するものであるが、ゲームに歩数を用いることが前提になっていた。
【0006】
それゆえに、この発明の主たる目的は、新規な、ゲーム装置、ゲームプログラム、ゲーム制御法およびゲームシステムを提供することである。
【0007】
また、この発明の他の目的は、ゲームの進行を補助するために歩数を利用することができる、ゲーム装置、ゲームプログラム、ゲーム制御方法およびゲームシステムを提供することである。
【課題を解決するための手段】
【0008】
第1の発明は、入力手段を備えるゲーム装置であって、歩数計測手段、ゲーム処理手段、および利用手段を備える。歩数計測手段は、歩数を計測する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数計測手段によって計測された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0009】
第1の発明によれば、歩数を利用することによってゲームの進行を補助するので、たとえば、ゲームの苦手なユーザでも歩くことによってゲームを容易に進めることができるので、ユーザの間口を広げることができる。
【0010】
第2の発明は、第1の発明に従属し、利用手段は、入力手段からの入力に基づいて、歩数をゲームに利用する。ゲーム処理手段は、利用手段によって歩数が利用されないときは、入力手段からの入力に基づいてゲームを進行させるゲーム処理を実行し、利用手段によって歩数が利用されたときは、当該ゲーム処理に加えて当該ゲームの進行を支援する補助処理を実行する。
【0011】
第2の発明によれば、歩数を利用しなくてもゲームを進行させることができ、歩数を利用すればゲームの進行を支援する補助処理を行うので、ユーザのゲームの熟練度に応じて、歩数を利用するかどうかを選択させることができる。したがって、ゲームの上級者も初心者も、分け隔てなくゲームを楽しむことができ、ユーザの間口を広げることができる。
【0012】
第3の発明は、第1または第2の発明に従属し、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行のヒントとなる情報を出力する。たとえば、敵を倒す方法や手がかりを示したり、プレイヤキャラクタが進行するべき方向を示したりする。
【0013】
第3の発明によれば、歩数を利用することによりヒントを得ることができるので、難易度の高いゲームであっても歩くことによってゲームを進め易くすることができる。
【0014】
第4の発明は、第1または第2の発明に従属し、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行に要する時間を低減する処理を実行する。たとえば、ゲームが早送りプレイされる。したがって、キャラクタの成長率を高くしたり、レベルアップにかかる時間が短縮されたりする。
【0015】
第4の発明によれば、歩数を利用することによってゲームを早く進めることができるので、歩くことによってゲームを効率良くプレイすることができる。
【0016】
第5の発明は、第1ないし第4の発明のいずれかに従属し、ゲーム装置は、歩数計測手段によって計測された歩数を当該歩数に相関する歩数相関値に変換して蓄積する蓄積手段をさらに備える。利用手段は、蓄積手段によって蓄積された歩数相関値をゲームに利用する。
【0017】
第5の発明によれば、歩数を歩数相関値に変換して蓄積するので、歩数を後でゲームの進行を補助するために利用することができる。
【0018】
第6の発明は、第5の発明に従属し、利用手段は、歩数相関値が所定値以上である場合に、当該歩数相関値をゲームに利用する。
【0019】
第6の発明によれば、歩数相関値が所定値以上である場合に、当該歩数相関値をゲームに利用することができるので、一定以上歩かなければゲーム進行の補助を得ることができないので、ユーザに歩く動機付けを与えることができる。
【0020】
第7の発明は、第6の発明に従属し、利用手段によって歩数相関値がゲームに利用されたとき、当該歩数相関値を減少させる減算手段をさらに備える。
【0021】
第7の発明によれば、ゲーム進行の補助を行うたびに歩数相関値を減少させるので、ユーザに継続的に歩く動機付けを与えることができる。
【0022】
第8の発明は、第1ないし第7の発明のいずれかに従属し、ゲーム装置の不使用状態と使用状態とを切り替える切替手段、および使用状態から不使用状態になったかどうかを判別する切替判別手段をさらに備える。歩数計測手段は、切替判別手段によって不使用状態になったことが判別されたとき、歩数を計測する。つまり、ゲーム装置を使用しないときに、歩数を計測するのである。
【0023】
第8の発明によれば、ユーザないしプレイヤが機器を使用していないときに、歩数計として使用することができる。したがって、機器を使用していなくても外で持ち歩いてもらう動機付けを与えることができる。
【0024】
第9の発明は、第8の発明に従属し、切替手段は、省電力モードと通常モードとを切り替ええる。切替判別手段は、通常モードから省電力モードになったかどうかを判別することによって使用状態から不使用状態になったかどうかを判別する。
【0025】
第9の発明においても、ユーザないしプレイヤが機器を使用していないときに、歩数計として使用することができる。
【0026】
第10の発明は、第8の発明に従属し、ゲーム処理手段を不能化する不能化手段をさらに備える。切替手段は、不能化手段によってゲーム処理手段が不能化されることによって使用状態から不使用状態に切り替える。
【0027】
第10の発明においても、ユーザないしプレイヤが機器を使用していないときに、歩数計として使用することができる。
【0028】
第11の発明は、第8の発明に従属し、装置本体は開閉可能な機構を有する。たとえば、装置の蓋を開閉したり、装置自体を開閉したりする。切替手段は、装置本体が閉じられている状態と開かれている状態とを切り替える。切替判別手段は、装置本体が開かれている状態から閉じられている状態になったかどうかを判別することによって使用状態から不使用状態になったかどうかを判別する。
【0029】
第11の発明においても、ユーザないしプレイヤが機器を使用していないときに、歩数計として使用することができる。
【0030】
第12の発明は、第1ないし第11の発明のいずれかに従属し、通信手段をさらに備える。通信手段は、歩数計測手段によって歩数が計測される間、自動的に通信処理を実行する。
【0031】
第12の発明によれば、ユーザないしプレイヤが機器を使用していないときに、さらに、データを送信したり、受信したり、送受信したりするような通信処理を自動的に実行するので、他の装置やアクセスポイントからデータを収集したり、他の装置やアクセスポイントにデータを送信したりすることができる。また、歩数が計測される間に自動的に通信処理を行うので、ユーザないしプレイヤが機器を外で持ち歩いている間に、他のユーザないしプレイヤが持ち歩いている機器や街中に設置されているアクセスポイントとの間で知らないうちに通信が行われる。したがって、ユーザに驚きや興趣性を与えることができるとともに、ユーザの歩く意欲をより引き出すことができる。
【0032】
第13の発明は、第1ないし第12の発明のいずれかに従属し、通信手段は、他のゲーム装置の探索を自動的に行い、探索されたとき、当該他のゲーム装置との間でデータの送受信を自動的に実行する。
【0033】
第13の発明においても、第12の発明と同様に、ユーザないしプレイヤが機器を外で持ち歩いている間に、他のユーザないしプレイヤが持ち歩いている機器との間で知らないうちに自動的に通信が行われるので、ユーザに驚きや興趣性を与えることができるとともに、ユーザの歩く意欲をより引き出すことができる。
【0034】
第14の発明は、第1ないし第12の発明のいずれかに従属し、通信手段は、所定のアクセスポイントの探索を自動的に行い、探索されたとき、当該アクセスポイントを介したデータの送受信を自動的に実行する。
【0035】
第14の発明においても、第12の発明と同様に、ユーザないしプレイヤが機器を外で持ち歩いている間に、街中に設置されているアクセスポイントを介して知らないうちに自動的に通信が行われるので、ユーザに驚きや興趣性を与えることができるとともに、ユーザの歩く意欲をより引き出すことができる。
【0036】
第15の発明は、入力手段を備えるゲーム装置であって、歩数取得手段、ゲーム処理手段および利用手段を備える。歩数取得手段は、歩数を取得する。たとえば、ゲーム装置は、別に設けられる歩数計で計測した歩数を取得する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数取得手段によって取得された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0037】
第16の発明は、入力手段を備えるゲーム装置のゲームプログラムであって、ゲーム装置のコンピュータを、歩数計測手段、ゲーム処理手段、および利用手段として機能させる。歩数計測手段は、歩数を計測する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる利用手段は、歩数計測手段によって計測された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0038】
第17の発明は、入力手段を備えるゲーム装置のゲームプログラムであって、ゲーム装置のコンピュータを、歩数取得手段、ゲーム処理手段、および利用手段として機能させる。歩数取得手段は、歩数を取得する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数取得手段によって取得された歩数をゲームに利用する。そしてゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0039】
第18の発明は、入力手段を備えるゲーム装置のゲーム制御方法であって、(a)歩数を計測し、(b)入力手段からの入力に基づいてゲームを進行させ、そして(c)ステップ(a)によって計測された歩数をゲームに利用し、ステップ(b)は、ステップ(c)によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0040】
第19の発明は、入力手段を備えるゲーム装置のゲーム制御方法であって、(a)歩数を取得し、(b)入力手段からの入力に基づいてゲームを進行させ、そして(c)ステップ(a)によって取得された歩数をゲームに利用し、ステップ(b)は、ステップ(c)によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0041】
第20の発明は、入力手段を備えるゲームシステムであって、歩数計測手段、ゲーム処理手段、および利用手段を備える。歩数計測手段は、歩数を計測する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数計測手段によって計測された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0042】
第21の発明は、入力手段を備えるゲーム装置および歩数を計測する歩数計を備えるゲームシステムであって、ゲーム装置は、歩数取得手段、ゲーム処理手段、および利用手段を備える。歩数取得手段は、歩数計から歩数を取得する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数取得手段によって取得された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0043】
第15ないし第21の発明においても、第1の発明と同様に、ユーザの間口を広げることができる。
【発明の効果】
【0044】
この発明によれば、歩数を利用することによりゲームの進行を補助するので、ゲームの苦手なユーザでも歩くことによってゲームを容易に進めることができ、ユーザの間口を広げることができる。
【0045】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0046】
【図1】図1はこの発明のゲーム装置の外観構成の一実施例を示す図解図である。
【図2】図2は図1に示すゲーム装置を折り畳んだ状態の上面図および左側面図を示す図解図である。
【図3】図3は図1および図2に示すゲーム装置の電気的な構成を示すブロック図である。
【図4】図4は図1−図3に示すゲーム装置の第1LCDまたは第2LCDに表示される画面の例を示す図解図である。
【図5】図5は図3に示す保存用データメモリのメモリマップの例を示す図解図である。
【図6】図6は図5に示すデータ記憶領域の詳細な内容を示す図解図である。
【図7】図7は図3に示すマイコンに内蔵されるメモリのメモリマップの例を示す図解図である。
【図8】図8は図3に示すCPUの全体処理の一部を示すフロー図である。
【図9】図9は図3に示すCPUの全体処理の他の一部であって、図8に後続するフロー図である。
【図10】図10は図3に示すCPUのコイン獲得処理の一部を示すフロー図である。
【図11】図11は図3に示すCPUのコイン獲得処理の第2の一部であって、図10に後続するフロー図である。
【図12】図12は図3に示すCPUのコイン獲得処理の第3の一部であって、図10に後続するフロー図である。
【図13】図13は図3に示すCPUのコイン獲得処理の第4の一部であって、図10に後続するフロー図である。
【図14】図14は図3に示すCPUのコイン獲得処理の第5の一部を示すフロー図である。
【図15】図15は図3に示すCPUの第1アプリケーション実行処理の一部を示すフロー図である。
【図16】図16は図3に示すCPUの第1アプリケーション実行処理の他の一部を示すフロー図である。
【図17】図17は図3に示すCPUの第2アプリケーション実行処理を示すフロー図である。
【図18】図18は図3に示すマイコンの歩数検出処理の一部を示すフロー図である。
【図19】図19は図3に示すマイコンの歩数検出処理の他の一部であって、図18に後続するフロー図である。
【図20】図20は図1−図3に示すゲーム装置の第1LCDまたは第2LCDに表示される画面の他の例を示す図解図である。
【図21】図21は図3に示すメインメモリのデータ記憶領域に記憶されるアプリケーションプログラムの他の例を示す図解図である。
【図22】図22は図3に示すCPUの第3アプリケーション実行処理を示すフロー図である。
【図23】図23は図3に示すCPUの第4アプリケーション実行処理を示すフロー図である。
【図24】図24はこの発明のゲームシステムの一例を示す図解図である。
【図25】図25は図24に示すゲームシステムを構成する場合のメモリカードの電気的な構成を示す図解図である。
【図26】図26は図24に示す歩数計の外観の一例を示す斜視図である。
【図27】図27は図24および図26に示す歩数計の電気的な構成を示すブロック図である。
【発明を実施するための形態】
【0047】
図1を参照して、この発明の実施例のゲーム装置10は、上側ハウジング12および下側ハウジング14を含み、上側ハウジング12と下側ハウジング14とは、開閉可能(折り畳み可能)に連結されている。図1の例では、上側ハウジング12および下側ハウジング14は、それぞれ横長の長方形の板状に形成され、互いの長辺部分で回動可能に連結されている。つまり、この実施例のゲーム装置10は、折り畳み式の携帯型のゲーム装置であり、図1には、当該ゲーム装置10を開いた状態(開状態)で示してある。ゲーム装置10は、開いた状態においてもユーザが両手または片手で把持することができるようなサイズで構成される。
【0048】
通常、ユーザは、開状態でゲーム装置10を使用する。また、ユーザは、ゲーム装置10を使用しない場合には閉状態で保管する。ただし、ゲーム装置10は、上記閉状態および開状態のみでなく、上側ハウジング12と下側ハウジング14とのなす角度が閉状態と開状態との間の任意の角度において、連結部分に発生する摩擦力などによってその開閉角度を維持することができる。つまり、上側ハウジング12を下側ハウジング14に対して任意の角度で静止させることができる。
【0049】
なお、ゲーム装置10は、後述するカメラ(32,34)を搭載しており、当該カメラ(32,34)によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりする撮像装置としても機能する。
【0050】
図1に示すように、上側ハウジング12には第1LCD16が設けられ、下側ハウジング14には第2LCD18が設けられる。第1LCD16および第2LCD18は、横長形状であり、それぞれの長辺方向が上側ハウジング12および下側ハウジング14の長辺方向と一致するように配置される。たとえば、第1LCD16および第2LCD18の解像度は、256(横)×192(縦)画素(ドット)に設定される。
【0051】
なお、この実施例では、表示器としてLCDを用いるようにしてあるが、LCDに代えて、EL(Electronic Luminescence)ディスプレイやプラズマディスプレイを用いるようにしてもよい。また、ゲーム装置10は、任意の解像度の表示装置を利用することができる。
【0052】
図1および図2に示すように、下側ハウジング14には、入力装置として、各操作ボタン20a−20kが設けられる。この各操作ボタン20a−20kのうち、方向入力ボタン20a、操作ボタン20b、操作ボタン20c、操作ボタン20d、操作ボタン20e、電源ボタン20f、スタートボタン20g、およびセレクトボタン20hは、下側ハウジング14の第2LCD18が設けられる側の面(内側の面)に配置される。具体的には、方向入力ボタン20aおよび電源ボタン20fは、第2LCD18の左側に配置され、操作ボタン20b−20e,20gおよび20hは、第2LCD18の右側に配置される。また、上側ハウジング12と下側ハウジング14とを折り畳んだときには、操作ボタン20a−20hはゲーム装置10の内部に収められる。
【0053】
方向入力ボタン(十字キー)20aは、ディジタルジョイスティックとして機能し、プレイヤオブジェクトの移動方向を指示したり、カーソルを移動させたりするなどに用いられる。各操作ボタン20b−20eは、プッシュボタンであり、たとえば、プレイヤオブジェクトに任意の動作をさせたり、決定やキャンセルを実行したりする等に用いられる。電源ボタン20fは、プッシュボタンであり、ゲーム装置10の主電源をオン/オフするために用いられる。スタートボタン20gは、プッシュボタンであり、ゲームを中断(ポーズ)したり、開始(再開)したりするために用いられる。セレクトボタン20hは、プッシュボタンであり、ゲームモードやメニューの選択等に用いられる。
【0054】
図1においては、操作ボタン20i−20kを省略したが、図2(A)に示すように、操作ボタン(Lボタン)20iは、下側ハウジング14の上側面の左端部に設けられ、操作ボタン(Rボタン)20jは、下側ハウジング14の上側面の右端部に設けられる。また、図2(B)に示すように、音量ボタン20kは、下側ハウジング14の左側面に設けられる。
【0055】
なお、図2(A)は、ゲーム装置10を折り畳んだ状態で、上面(上ハウジング12)側から見た図であり、図2(B)は、同じくゲーム装置10を折り畳んだ状態で、左側面から見た図である。
【0056】
Lボタン20iおよびRボタン20jは、プッシュボタンであり、操作ボタン20b−20eと同様の操作に用いたり、それらの操作ボタン20b−20eの補助的な操作に用いたりすることができる。また、この実施例では、Lボタン20iおよびRボタン20jは、撮影指示の操作(シャッター操作)を行うために用いることもできる。音量ボタン20kは、2つのプッシュボタンを用いて構成され、図示しない2つのスピーカ(右スピーカおよび左スピーカ)から出力される音の大きさを調整するために用いられる。この実施例では、音量ボタン20kには、2つの押圧部を含む操作部が設けられ、各押圧部に対応して上記のプッシュボタンが設けられる。したがって、一方の押圧部を押すと音量が大きくされ、他方の押圧部を押すと音量が小さくされる。たとえば、押圧部を押し続けると、音量が次第に大きくされたり、次第に小さくされたりする。
【0057】
図1に戻って、ゲーム装置10は、操作ボタン20a−20kとは別の入力装置として、さらにタッチパネル22を備えている。タッチパネル22は、第2LCD18の画面上を覆うように装着されている。この実施例では、タッチパネル22は、たとえば抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル22は、抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。また、この実施例では、タッチパネル22として、たとえば第2LCD18の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル22の解像度と第2LCD18の解像度とが一致している必要はない。
【0058】
また、下側ハウジング14の右側面には、挿入口(図1に示す破線)が設けられている。挿入口は、タッチパネル22に対する操作を行うために用いられるタッチペン24を収納することができる。通常、タッチパネル22に対する入力は、タッチペン24を用いて行われるが、タッチペン24に限らずユーザの指でタッチパネル22を操作することも可能である。したがって、たとえば、タッチペン24を用いない場合には、タッチペン24の挿入口および収納部を設ける必要はない。
【0059】
また、下側ハウジング14の右側面には、メモリカード26を収納するための挿入口(図1では、二点鎖線で示している)が設けられている。この挿入口の内側には、ゲーム装置10とメモリカード26とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード26は、たとえばSDカードであり、コネクタに着脱自在に装着される。このメモリカード26は、たとえば、ゲーム装置10によって撮像された画像を記憶(保存)したり、他の装置で生成(撮像)ないし記憶された画像をゲーム装置10に読み込んだりするために用いられる。
【0060】
さらに、下側ハウジング14の上側面には、メモリカード28を収納するための挿入口(図1では、一点鎖線で示している)が設けられている。この挿入口の内側にも、ゲーム装置10とメモリカード28とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード28は、情報処理プログラムおよび必要なデータなどを記録した記録媒体であり、下側ハウジング14に設けられた挿入口に着脱自在に装着される。
【0061】
また、上側ハウジング12と下側ハウジング14との連結部(ヒンジ)の左端部分には、インジケータ30が設けられる。このインジケータ30は、3つのLED30a,30b,30cによって構成される。ここで、ゲーム装置10は、他の機器との間で無線通信を行うことが可能であり、第1LED30aは、無線通信が確立している場合に点灯する。第2LED30bは、ゲーム装置10の充電中に点灯する。第3LED30cは、ゲーム装置10の主電源がオンである場合に点灯する。したがって、インジケータ30(LED30a−30c)によって、ゲーム装置10の通信確立状況、充電状況、および主電源のオン/オフ状況をユーザに通知することができる。
【0062】
図示は省略するが、ヒンジの内部には、ゲーム装置10の開閉に応じて切り替えられるスイッチ(開閉スイッチ42:図3参照)が設けられる。たとえば、ゲーム装置10を開いている状態では、開閉スイッチ42はオンされる。一方、ゲーム装置10を閉じている(折り畳んでいる)状態では、開閉スイッチ42はオフされる。ただし、ゲーム装置10が開いている状態であるか閉じている状態であるかが分かればよいため、開閉スイッチ42のオンとオフとは逆であっても構わない。
【0063】
上述したように、上側ハウジング12には、第1LCD16が設けられる。この実施例では、第2LCD18を覆うように、タッチパネル22を設けているが、第1LCD16を覆うように、タッチパネル22を設けてもよい。または、第1LCD16および第2LCD18のそれぞれを覆うように、2つのタッチパネル22を設けるようにしてもよい。たとえば、第2LCD18には、各操作ボタン20a−20kやタッチパネル22の役割ないし操作方法をユーザに教えるための操作説明画面やゲーム画面が表示される。
【0064】
また、上側ハウジング12には、2つのカメラ(内側カメラ32および外側カメラ34)が設けられる。図1に示すように、内側カメラ32は、上側ハウジング12と下側ハウジング14との連結部付近であり、第1LCD16が設けられる側の面に、この第1LCD16の表示面とその撮影面とが平行または面一になるように取り付けられる。一方、外側カメラ34は、図2(A)に示すように、内側カメラ32が取り付けられる面とは反対側の面、すなわち、上側ハウジング12の外側の面(ゲーム装置10が閉状態となった場合に外側となる面であり、図1に示す上側ハウジング12の背面)に取り付けられる。ただし、図1においては、外側カメラ34を破線で示してある。
【0065】
したがって、内側カメラ32は、上側ハウジング12の内側の面が向く方向を撮像することが可能であり、外側カメラ34は、内側カメラ32の撮像方向の逆方向、すなわち、上側ハウジング12の外側の面が向く方向を撮像することが可能である。このように、この実施例では、内側カメラ32および外側カメラ34の撮像方向が互いに逆方向となるように、それら2つのカメラ32,34が設けられる。たとえば、ゲーム装置10を把持したユーザは、このゲーム装置10側からユーザの方を見た景色(たとえば、当該ユーザを含む)を内側カメラ32で撮像することができるとともに、ゲーム装置10側からユーザとは反対側の方向を見た景色を外側カメラ34で撮像することができる。
【0066】
なお、上記連結部付近の内側の面には、音声入力装置としてマイク84(図3参照)が収納されている。そして、上記連結部付近の内側の面には、マイク84がゲーム装置10外部の音を検知できるように、そのマイク84用の孔36が形成される。マイク84を収納する位置およびマイク84用の孔36の位置は必ずしも上記連結部である必要はなく、たとえば下側ハウジング14にマイク84を収納し、マイク84の収納位置に対応させて下側ハウジング14にマイク84用の孔36を設けるようにしてもよい。
【0067】
また、上側ハウジング12の外側の面には、外側カメラ34の近傍に第4LED38(図1では、破線で示す)が取り付けられる。第4LED38は、内側カメラ32または外側カメラ34によって撮影が行われた(シャッターボタンが押下された)時点で点灯する。また、内側カメラ32または外側カメラ34によって動画が撮影される場合には、第4LED38は、撮影の間点灯し続ける。つまり、第4LED38を点灯することによって、ゲーム装置10による撮影が行われた(行われている)ことを撮影対象者や周囲に通知することができる。
【0068】
また、上側ハウジング12には、第1LCD16の両側に、音抜き孔40が形成される。この音抜き孔40に対応する位置であり、上側ハウジング12の内部には、上述したスピーカが収納されている。音抜き孔40は、スピーカからの音をゲーム装置10の外部に放出するための孔である。
【0069】
以上に説明したように、上側ハウジング12には、画像を撮像するための構成である内側カメラ32および外側カメラ34と、主として、撮影された画像(撮影画像)およびゲーム画面を表示するための表示手段である第1LCD16とが設けられる。一方、下側ハウジング14には、ゲーム装置10に対する操作入力を行うための入力装置(操作ボタン20(20a−20k)およびタッチパネル22)と、主として、操作画面およびゲーム画面を表示するための表示手段である第2LCD18とが設けられる。したがって、ゲーム装置10は、2つの画面(16,18)および2系統の操作部(20,22)を備えている。
【0070】
図3は、この実施例のゲーム装置10の電気的な構成を示すブロック図である。図3に示すように、ゲーム装置10は、CPU50、メインメモリ52、メモリ制御回路54、保存用データメモリ56、プリセットデータ用メモリ58、メモリカードインターフェース(メモリカードI/F)60、メモリカードI/F62、無線通信モジュール64、ローカル通信モジュール66、マイコン68、電源回路70、インターフェース回路(I/F回路)72、第1GPU(Graphics Processing Unit)74、第2GPU76、第1VRAM(Video RAM)78、第2VRAM80、およびLCDコントローラ82等の電子部品を備えている。これらの電子部品(回路コンポーネント)は、電子回路基板上に実装されて、下側ハウジング14(または上側ハウジング12でもよい)内に収納される。
【0071】
CPU50は、所定のプログラムを実行するための情報処理手段である。この実施例では、所定のプログラムは、ゲーム装置10内のメモリ(たとえば保存用データメモリ56)やメモリカード26および/または28に記憶されており、CPU50は、当該所定のプログラムを実行することによって、後述する情報処理(この実施例では、ゲーム処理)を実行する。
【0072】
なお、CPU50によって実行されるプログラムは、ゲーム装置10内のメモリに予め記憶していてもよいし、メモリカード26および/または28から取得してもよいし、他の機器と通信することによって当該他の機器から取得してもよい。
【0073】
CPU50には、メインメモリ52、メモリ制御回路54、およびプリセットデータ用メモリ58が接続される。また、メモリ制御回路54には、保存用データメモリ56が接続される。メインメモリ52は、CPU50のワーク領域やバッファ領域として用いられる記憶手段である。すなわち、メインメモリ52は、上記情報処理に用いられる各種データを記憶(一時記憶)したり、外部(メモリカード26および28や他の機器等)から取得されるプログラムを記憶したりする。この実施例では、メインメモリ52として、たとえばPSRAM(Pseudo−SRAM)を用いる。保存用データメモリ56は、CPU50によって実行されるプログラムや内側カメラ32および外側カメラ34によって撮像された画像のデータ等を記憶(保存)するための記憶手段である。この保存用データメモリ56は、不揮発性の記憶媒体によって構成されており、たとえば、NAND型フラッシュメモリを用いることができる。メモリ制御回路54は、CPU50の指示に従って、保存用データメモリ56に対するデータの読み出しおよび書き込みを制御する。プリセットデータ用メモリ58は、ゲーム装置10において予め設定される各種パラメータ等のデータ(プリセットデータ)を記憶するための記憶手段である。プリセットデータ用メモリ58としては、SPI(Serial Peripheral Interface)バスによってCPU50と接続されるフラッシュメモリを用いることができる。
【0074】
メモリカードI/F60および62は、それぞれCPU50に接続される。メモリカードI/F60は、コネクタに装着されたメモリカード26に対するデータの読み出しおよび書き込みを、CPU50の指示に応じて行う。また、メモリカードI/F62は、コネクタに装着されたメモリカード28に対するデータの読み出しおよび書き込みを、CPU50の指示に応じて行う。この実施例では、内側カメラ32および外側カメラ34によって撮像された画像に対応する画像データや他の装置から受信された画像データがメモリカード26に書き込まれたり、メモリカード26に記憶された画像データがメモリカード26から読み出されて保存用データメモリ56に記憶されたり、他の装置へ送信されたりする。また、メモリカード28に記憶された各種プログラムが、CPU50によって読み出されて実行されたりする。
【0075】
なお、ゲームプログラムなどの情報処理プログラムは、メモリカード28等の外部記憶媒体を通じてゲーム装置10に供給されるだけでなく、有線または無線の通信回線を通じてゲーム装置10に供給されてもよい。また、情報処理プログラムは、ゲーム装置10内部の不揮発性記憶装置に予め記録されていてもよい。さらに、情報処理プログラムを記憶する情報記憶媒体としては、上記不揮発性記憶装置に限らず、CD−ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体でもよい。
【0076】
無線通信モジュール64は、たとえばIEEE802.11.b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール66は、所定の通信方式により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール64およびローカル通信モジュール66は、CPU50に接続される。CPU50は、無線通信モジュール64を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール66を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0077】
また、CPU50には、マイコン68が接続される。マイコン68は、メモリ68aおよびRTC68bを含む。メモリ68aは、たとえばRAMであり、マイコン68による制御のためのプログラムやデータが記憶される。RTC68bは、時間をカウントする。マイコン68では、RTC68bによって計時された時間に基づいて、日付および現在時刻等を計算することもできる。
【0078】
マイコン68には、電源スイッチ20f、開閉スイッチ42、電源回路70、および加速度センサ88が接続される。電源スイッチ20fからは、オンの信号がマイコン68に与えられる。ゲーム装置10の主電源がオフされている状態で、電源スイッチ20fがオンされると、マイコン68のBootROMとしても機能するメモリ68aが起動され、後述するように、ゲーム装置10の開閉状態に応じて電源制御が行なわれる。一方、ゲーム装置10の主電源がオンされている状態で、電源スイッチ20fがオンされると、マイコン68は電源回路70に全回路コンポーネント(マイコン68を除く。)への電力供給の停止を指示する。ここで、電源回路70は、ゲーム装置10が有する電源(典型的には電池であり、下側ハウジング14に収納される)から供給される電力を制御し、ゲーム装置10の各回路コンポーネントに電力を供給する。
【0079】
また、開閉スイッチ42からは、オンまたはオフの信号がマイコン68に与えられる。開閉スイッチ42がオンされている状態(ゲーム装置10本体が開かれている状態)で、ゲーム装置10の主電源がオンされている場合には、マイコン68の制御の下、電源回路70からゲーム装置10の全回路コンポーネントに電力を供給するモード(以下、「通常モード」という)が設定される。通常モードでは、ゲーム装置10は任意のアプリケーションを実行可能であり、ユーザないしプレイヤが使用している状態(使用状態)である。
【0080】
また、ゲーム装置10の主電源がオンされている状態で、開閉スイッチ42がオフされている場合(ゲーム装置10本体が閉じられている状態)には、基本的には、電源回路70からゲーム装置10の一部のコンポーネントに電力を供給するモード(以下、「スリープモード」という)が設定される。ただし、アプリケーションの種類やアプリケーションの実行(進行)状況によっては、スリープモードが設定されないこともある。スリープを実行するか否かは、CPU50によって判断され、スリープを実行することが判断されると、CPU50は、スリープの実行をマイコン68に指示する。ただし、開閉スイッチ42がオフされた場合に、スリープモードを設定することができないことが判断されると、マイコン68の指示に従って、電源回路70から第1LCD16および第2LCD18への電力の供給が停止される。
【0081】
スリープモードでは、ゲーム装置10は任意のアプリケーションを実行不能であり、ユーザないしプレイヤは使用していない状態(不使用状態)である。この実施例では、一部のコンポーネントは、CPU50、無線通信モジュール64およびマイコン68である。ただし、スリープモード(スリープ状態)では、CPU50は、基本的にクロックを停止した状態(不能化された状態)であるため、ほとんど電力を消費しない。また、スリープモードでは、CPU50への電力の供給を停止しても良い。したがって、上述したように、この実施例では、スリープモードにおいては、CPU50によって、アプリケーションが実行されることはない。
【0082】
ただし、スリープ状態において、無線通信モジュール64によって通信を実行する場合には、無線通信モジュール64からの制御信号によってCPU50を起動する。つまり、無線通信モジュール64によってCPU50のクロックが動作され、その後、無線通信モジュール64からCPU50に通信の開始指示が与えられる。以下、同じ。そして、CPU50からマイコン68に指示して、メモリ制御回路54および保存用データメモリ56への電力の供給が開始される。したがって、通信により他のゲーム装置10等に保存用データメモリ56に記憶されたデータを送信したり、他のゲーム装置10等から受信したデータを保存用データメモリ56に記憶したりすることができる。
【0083】
また、スリープ状態において、マイコン68から歩数データ(後述する累積歩数データ152c)を出力する場合には、マイコン68からの制御信号によってCPU50を起動する。つまり、マイコン68によってCPU50のクロックが動作され、歩数データの出力が通知される。また、マイコン68は、電源回路70を制御して、メモリ制御回路54および保存用データメモリ56への電力の供給を開始する。したがって、マイコン68から出力される歩数データが保存用データメモリ56に記憶される。
【0084】
さらに、ゲーム装置10が開かれるなどして、スリープ状態が解除(非スリープ状態)にされると、開閉スイッチ42からオフの信号がマイコン68に入力される。したがって、マイコン68は、CPU50を起動して、CPU50にスリープの解除を指示する。これに応じて、CPU50は、マイコン68にスリープの解除を指示する。つまり、CPU50の指示の下、マイコン68は、電源回路70を制御して、全回路コンポーネントへの電源の供給を開始する。したがって、ゲーム装置10は、通常モードへ移行し、使用状態になる。ただし、スリープモードが設定されていない場合には、ゲーム装置10が開かれたときに、CPU50の指示の下、マイコン68は、電源回路70を制御して、第1LCD16および第2LCD18に電力を供給する。
【0085】
また、上述したように、マイコン68には、加速度センサ88が接続される。たとえば、加速度センサ88は、3軸の加速度センサであり、下側ハウジング14(上側ハウジング12でもよい)の内部に設けられる。ゲーム装置10の第1LCD16(第2LCD18)の面に対して垂直な方向の加速度、および第1LCD16(第2LCD18)の面に対して平行であり、互いに直交する2方向(縦方向および横方向)の加速度を検出する。加速度センサ88は、検出した加速度についての信号(加速度信号)をマイコン68に出力する。マイコン68は、加速度信号に基づいて、ゲーム装置10の向きを検出したり、ゲーム装置10の振動の大きさを検出したりすることができる。したがって、たとえば、マイコン68および加速度センサ88を歩数計として機能させることができる。加速度センサ88を用いた歩数計は既に周知であるため、その詳細な内容については省略するが、加速度の大きさに応じて歩数が測定される。
【0086】
また、ゲーム装置10は、マイク84およびアンプ86を備えている。マイク84およびアンプ86は、それぞれI/F回路72に接続される。マイク84は、ゲーム装置10に向かって発声ないし発生されたユーザの音声ないし音(拍手や手拍子など)を検知して、当該音声ないし音を示す音声信号をI/F回路72に出力する。アンプ86は、I/F回路72から与えられる音声信号を増幅してスピーカ(図示せず)に与える。I/F回路72は、CPU50に接続される。
【0087】
また、タッチパネル22は、I/F回路72に接続される。I/F回路72は、マイク84およびアンプ86(スピーカ)の制御を行う音声制御回路と、タッチパネル22の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル22からの信号に基づいて所定の形式のタッチ位置データを生成してCPU50に出力する。たとえば、タッチ位置データは、タッチパネル22の入力面に対して入力が行われた位置の座標を示すデータである。
【0088】
なお、タッチパネル制御回路は、タッチパネル22からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。CPU50は、I/F回路72を介して、タッチ位置データを取得することにより、タッチパネル22に対して入力が行われた位置を知ることができる。
【0089】
操作ボタン20は、上記の各操作ボタン20a−20k(電源スイッチ20fを除く。以下、同じ。)によって構成され、CPU50に接続される。操作ボタン20からCPU50へは、各操作ボタン20a−20kに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU50は、操作ボタン20からの操作データを取得し、取得した操作データに応じた処理を実行する。
【0090】
内側カメラ32および外側カメラ34は、それぞれCPU50に接続される。内側カメラ32および外側カメラ34は、CPU50の指示に応じて画像を撮像し、撮像した画像に対応する画像データをCPU50に出力する。この実施例では、CPU50は、内側カメラ32および外側カメラ34のいずれか一方に対して撮像指示を行い、撮像指示を受けたカメラ(32,34)が画像を撮像して画像データをCPU50に送る。
【0091】
第1GPU74には、第1VRAM78が接続され、第2GPU76には、第2VRAM80が接続される。第1GPU74は、CPU50からの指示に応じて、メインメモリ52に記憶されている表示画像を生成するためのデータに基づいて第1の表示画像を生成し、第1VRAM78に描画する。第2GPU76は、同様にCPU50からの指示に応じて第2の表示画像を生成し、第2VRAM80に描画する。第1VRAM78および第2VRAM80は、LCDコントローラ82に接続されている。
【0092】
LCDコントローラ82は、レジスタ82aを含む。レジスタ82aは、CPU50からの指示に応じて、「0」または「1」の値を記憶する。LCDコントローラ82は、レジスタ82aの値が「0」である場合には、第1VRAM78に描画された第1の表示画像を第2LCD18に出力し、第2VRAM80に描画された第2の表示画像を第1LCD16に出力する。また、レジスタ82aの値が「1」である場合には、第1VRAM78に描画された第1の表示画像を第1LCD16に出力し、第2VRAM80に描画された第2の表示画像を第2LCD18に出力する。
【0093】
たとえば、このようなゲーム装置10は、不使用状態(または、スリープモードに設定された状態)では、すれ違い通信処理またはいつの間に通信処理を実行する。ここで、すれ違い通信処理について簡単に説明する。スリープモードでは、無線通信モジュール64は、一定時間(たとえば、30ms)をサーチ期間として、サーチ期間内に、他のゲーム装置10に接続要求を示す信号(接続要求信号、ビーコン)を自動的に送信(ブロードキャスト)するとともに、他のゲーム装置10からの接続要求信号の受信を試みる。このサーチ期間が繰り返し設定される。つまり、すれ違い通信処理が間欠的に自動的に実行される。これによって、近距離無線の通信可能範囲内に存在する他のゲーム装置10がサーチ(探索、スキャン)される。ただし、接続要求信号は、その送信元であるゲーム装置10の識別情報を含む。
【0094】
このとき、ゲーム装置10は、接続要求信号を受信すると、これに応答して、接続要求信号の送信元のゲーム装置10に、接続許可信号を送信する。ただし、接続許可信号は、その送信元であるゲーム装置10の識別情報を含む。これによって、2つのゲーム装置10で互いに他の存在を認識して、接続または通信状態を確立する。
【0095】
ただし、接続要求信号に応答して接続許可信号を送信したゲーム装置10では、無線通信モジュール64が、CPU50を起動し、CPU50からの指示に従って、マイコン68の制御の下、電源回路70からメモリ制御回路54および保存用データメモリ56に電力の供給が開始される。また、同様に、接続許可信号を受信したゲーム装置10では、無線通信モジュール64が、CPU50を起動し、CPU50からの指示に従って、マイコン68の制御の下、電源回路70からメモリ制御回路54および保存用データメモリ56に電力の供給が開始される。
【0096】
通信状態を確立すると、2つのゲーム装置10の間で、予め設定(決定)されている、ゲームデータやメッセージデータなどのデータが自動的に送信または受信或いは送受信される。
【0097】
詳細な説明は省略するが、すれ違い通信を終了すると(または、すれ違い通信に係るデータの送受信を終了すると)、各ゲーム装置10は、スリープ状態に戻る。
【0098】
また、詳細な説明は省略するが、すれ違い通信が実行される場合、通信状態を確立した2つのゲーム装置10のうち、接続要求信号を送信したゲーム装置10が親機として機能し、接続要求信号に応答して接続許可信号を送信したゲーム装置10が子機として機能する。
【0099】
したがって、ユーザないしプレイヤは、不使用状態(または、スリープ状態)でゲーム装置10を持ち歩くと、何ら操作することなく、他のゲーム装置10との間で自動的に通信(すれ違い通信)が実行され、当該他のゲーム装置10からゲームデータやメッセージデータなどのデータを得ることができる。
【0100】
次に、いつの間に通信処理について簡単に説明する。いつの間に通信は、所定のアクセスポイントを介して所定のサーバと自動的に接続し、当該サーバとの間で自動的に通信処理を実行するものである。無線通信モジュール64は、すれ違い通信のサーチ期間でない期間をいつの間に通信のサーチ期間とし、当該いつの間に通信のサーチ期間内に、所定のアクセスポイントからのビーコンの受信を試みる。このいつの間にサーチ期間が定期的に繰り返し設定される。つまり、いつの間に通信処理が間欠的に自動的に実行される。これによって、近距離無線の通信可能範囲内に存在する所定のアクセスポイントがサーチされる。ただし、ビーコンは、そのアクセスポイントの識別情報を含む。
【0101】
このとき、ゲーム装置10は、所定のアクセスポイントからのビーコンを受信すると、当該アクセスポイントに自動的に接続し、更に、当該アクセスポイントを介して所定のサーバに自動的に接続する。
【0102】
ただし、ビーコンを受信したゲーム装置10では、無線通信モジュール64が、CPU50を起動し、CPU50からの指示に従って、マイコン68の制御の下、電源回路70からメモリ制御回路54および保存用データメモリ56に電力の供給が開始される。
【0103】
サーバとの接続を確立すると、当該サーバから、たとえば、ゲームデータやメッセージデータなどが送信され、これらのデータが所定のアクセスポイントを介して受信される。
【0104】
詳細な説明は省略するが、いつの間に通信を終了すると(または、いつの間に通信に係るデータの送受信を終了すると)、各ゲーム装置10は、スリープ状態に戻る。
【0105】
したがって、ユーザないしプレイヤは、不使用状態(または、スリープ状態)でゲーム装置10を持ち歩くと、何ら操作することなく、所定のアクセスポイントおよび所定のサーバとの間で自動的に通信(いつの間に通信)が実行され、当該サーバから当該アクセスポイントを介してゲームデータやメッセージデータなどのデータを得ることができる。
【0106】
また、上述したように、スリープモードにおいては、ゲーム装置10は、歩数計としても機能し、上述のように、ユーザないしプレイヤが当該ゲーム装置10を持ち歩いている場合に、当該ユーザないしプレイヤの歩数がカウントされる。カウントされた歩数は、必要に応じて、ゲーム装置10で実行されるアプリケーションプログラムの処理に反映される。
【0107】
たとえば、図3に示した保存用データメモリ56には複数のアプリケーションについてのアプリケーションプログラムを記憶することができる。ゲーム装置10の主電源をオンすると、図4(A)に示すような、アプリケーションの選択等を行うためのメインメニュー画面200が第2LCD18(第1LCD16でも可)に表示される。
【0108】
なお、詳細な説は省略するが、各アプリケーションの処理を終了した場合にも、メインメニュー画面200が表示される。
【0109】
図4(A)に示すように、メインメニュー画面200には、アプリケーションを選択するための複数のボタン画像202、204、…が設けられ、その下部に、各種設定やオプションを選択するためのボタン画像210、212が設けられる。ユーザないしプレイヤは、ボタン画像202、204、…をオンすることによって、所望のアプリケーションを選択することができる。
【0110】
たとえば、ボタン画像202がオンされると、第1アプリケーションが選択される。第1アプリケーションのプログラム(第1アプリケーションプログラム)に従うゲーム中に、アイテムを購入する場面においては、図4(B)に示すような画面(アイテム購入画面)300が第2LCD18(第1LCD16でも可)に表示される。
【0111】
このアイテム購入画面300では、ボタン画像302、304、306、308、310、312が表示される。たとえば、ボタン画像302−308は、プレイヤ(ユーザ)ないしプレイヤキャラクタがゲーム内で取得するコイン(以下、「通常コイン」という)を用いて購入することができるアイテム(通常アイテム:第1−第4アイテム)を選択するために設けられる。また、ボタン画像310およびボタン画像312は、計測した歩数に応じて獲得したコイン(以下、「獲得コイン」という)を用いて購入することができるアイテム(特殊アイテムA、B)を選択するために設けられる。
【0112】
ただし、通常コインは、ゲーム空間内に配置されたり、ゲーム内での労働やトレーニングの報酬として与えられたり、対戦ゲームなどで勝利したことに応じて与えられたりするようなコインであり、上述したように、プレイヤないしプレイヤキャラクタがゲーム内で取得する。また、獲得コインは、プレイヤがゲーム装置10を持ち歩くことにより計測した歩数を換算したコインであり、ゲーム内で取得することはできない。
【0113】
詳細な説明は省略するが、第1−第4アイテムを購入するために必要な通常コインの数や特殊アイテムA、Bを購入するために必要な獲得コインの数が予め決定されている。当然のことながら、プレイヤ(ユーザ)ないしプレイヤキャラクタが、必要な通常コインの数や必要な獲得コインの数以上の通常コインや獲得コインを有していない場合には、第1−第4アイテムまたは特殊アイテムA、Bを購入することができない。
【0114】
つまり、通常アイテムを購入して、それを使用することによりゲームを進行させることができるし、特殊アイテムを購入して、それを使用することによりゲームを進行させることもできる。また、たとえば、購入した特殊アイテム(購入特殊アイテム)が道具である場合には、プレイヤキャラクタがその道具を用いることができる。たとえば、購入アイテムを使用することにより、プレイヤキャラクタ102の能力を変化させて、ゲームの進行を補助するようにしてもよい。かかる場合には、たとえば、プレイヤキャラクタ102の残機数が増加されたり、体力が回復したり、一定時間攻撃力が上がったり、一定時間無敵になったり、味方が増えたりする。また、攻撃回数に制限がある場合には、攻撃回数が増加される。
【0115】
また、図4(A)に示すメインメニュー画面200で、ボタン画像204がオンされると、第2アプリケーションが選択される。たとえば、第2アプリケーションのプログラム(第2アプリケーションプログラム)に従うゲームの開始(再開)時に、コースを選択する場面においては、図4(C)に示すような画面(コース選択画面)400が第2LCD18(第1LCD16でも可)に表示される。
【0116】
このコース選択画面400では、ボタン画像402、404、406、408、410、412が表示される。たとえば、ボタン画像402−408は、獲得コインを使用せずに選択することができるコース(通常コース:第1−第4コース)を選択するために設けられる。また、ボタン画像410およびボタン画像412は、獲得コインを用いてプレイすることができるコース(特別コースA、B)を選択するために設けられる。
【0117】
詳細な説明は省略するが、特別コースA、Bでプレイするために必要な獲得コインの数は予め決定されている。当然のことながら、プレイヤ(ユーザ)ないしプレイヤキャラクタが必要な獲得コインの数以上の獲得コインを有していない場合には、特別コースA、Bでプレイすることができない。
【0118】
ただし、特別コースA、Bは、一度、獲得コインを使用してプレイすることができる状態にされた場合には、制限無くプレイできるようにしてもよいし、プレイ可能な回数や期間を設定しておいてもよい。
【0119】
このように、通常コースを選択して、通常コースでプレイすることができるし、特別コースA、Bを選択して、特別コースA、Bでプレイすることもできる。たとえば、特別コースA、Bは、ゲームについてのテクニックを特訓するためのコースや通常コースよりも難易度の高いコースである。つまり、特別コースA、Bは、プレイヤが歩くことによりプレイすることができる補助的なコースである。
【0120】
このように、歩数を換算した獲得コインを、異なる複数のアプリケーションプログラムの処理で共通に使用することができる。ここでは、簡単のため、2つのアプリケーションプログラムの処理で獲得コインが使用される場合について説明したが、異なる3つ以上のアプリケーションプログラムの処理で獲得コインを使用することも可能である。ただし、アプリケーションプログラムは、保存用データメモリ56に記憶(インストール)されている必要は無く、ゲーム装置10に装着したメモリカード26、28から読み込むようにしてもよいし、外部の機器からダウンロードするようにしてもよい。
【0121】
図5は、図3に示した保存用データメモリ56のメモリマップの例を示す図解図である。図5に示すように、保存用データメモリ56は、プログラム記憶領域90とデータ記憶領域100とを含む。プログラム記憶領域90には、本体処理プログラム92、第1アプリケーションプログラム94、第2アプリケーションプログラム96、…が記憶される。
【0122】
本体処理プログラム92は、メインメニュー画面表示プログラム92a、歩数取得プログラム92bおよびコイン獲得プログラム92cなどによって構成される。
【0123】
メインメニュー画面表示プログラム92aは、ゲーム装置10の主電源がオンされた場合やアプリケーションの処理を終了した場合に、図4(A)に示したような、メインメニュー画面200を表示するためのプログラムである。
【0124】
歩数取得プログラム92bは、マイコン68から送信される歩数についてのデータ(歩数データ)を受信し、データ記憶領域100に記憶するためのプログラムである。
【0125】
コイン獲得プログラム92cは、歩数データ(1020、1022、…、102m)が示す歩数を獲得コインに変換するためのプログラムである。この実施例では、歩数に相関する値(相関値)として獲得コインに変換するようにしてあるが、これに限定される必要は無く、他のアイテムやパラメータに変換してもよい。
【0126】
図示は省略するが、本体処理プログラム92には、音出力プログラムなども記憶される。音出力プログラムは、音(効果音)や音楽(BGM)を出力するためのプログラムである。
【0127】
第1アプリケーションプログラム94は、画像表示プログラム94a、アイテム選択プログラム94b、獲得総数取得プログラム94cおよびアイテム購入プログラム94dなどによって構成される。
【0128】
画像表示プログラム94aは、ゲーム画像(ゲーム画面)を第1LCD16および第2LCD18に表示するためのプログラムである。具体的には、画像表示プログラム94aを実行することにより、図示しない画像データ(ポリゴンデータ、テクスチャデータなど)を用いて、ゲーム画像を生成し、第1LCD16および第2LCD18に出力する。以下、同様である。
【0129】
アイテム選択プログラム94bは、ユーザないしプレイヤの指示に従ってアイテムが選択されたかどうかを判断するためのプログラムである。具体的には、図4(B)に示したアイテム選択画面300において、ボタン画像302−312がオンされたかどうかを判断するのである。
【0130】
獲得総数取得プログラム94cは、獲得コインの総数(以下、「総獲得コイン数」という)を取得するためのプログラムである。具体的には、後述する共用データ記憶領域102に記憶されるコイン獲得数データ102bに含まれる獲得総数データ1028を読み出す。
【0131】
アイテム購入プログラム94dは、通常コインまたは獲得コインを用いて、通常アイテム(第1−第4アイテム)または特殊アイテム(特殊アイテムA、B)を購入するためのプログラムである。
【0132】
図示は省略するが、第1アプリケーションプログラムには、メイン処理プログラム、音出力プログラム、バックアッププログラムおよび種々の処理プログラムなども含まれる。メイン処理プログラムは、第1アプリケーションのメインルーチンを処理するためのプログラムである。音出力プログラムは、第1アプリケーションプログラムの実行に伴う音(効果音)や音楽(BGM)を出力するためのプログラムである。また、バックアッププログラムは、ユーザないしプレイヤの指示に従って、または所定のイベントに従って、メインメモリ52に記憶されたゲームデータ(途中データ、終了データ)を保存用データメモリ56の第1アプリケーション用記憶領域104(図6参照)やメモリカード26、28に保存(セーブ)するためのプログラムである。種々の処理プログラムは、プレイヤの操作に従ってプレイヤキャラクタを移動または動作させたり、ノンプレイヤキャラクタ(たとえば、敵キャラクタ)を移動または動作させたり、スコアを算出したり、ゲームクリアやゲームオーバを判定したり、ゲームイベントに従う処理を実行したり、ゲーム画面の表示(更新)処理を実行するためのプログラムである。これらは、第2アプリケーションプログラムを含む他のアプリケーションプログラムについても同様である。
【0133】
また、第2アプリケーションプログラム96は、画像表示プログラム96a、コース選択プログラム96b、獲得総数取得プログラム96cおよび許可フラグ設定プログラム96dなどによって構成される。
【0134】
画像表示プログラム96aおよび獲得総数取得プログラム96cは、上述した画像表示プログラム94aおよび獲得総数取得プログラム94cと同様であるため、重複した説明は省略する。
【0135】
コース選択プログラム96bは、ゲームの開始(再開)時に、図4(C)に示したようなコース選択画面400において、ボタン画像402−412がオンされたかどうかを判断するためのプログラムである。
【0136】
許可フラグ設定プログラム96dは、特別コース(特別コースA、B)でプレイすることを許可するかどうかのフラグ(許可フラグ)を設定するためのプログラムである。
【0137】
図示は省略するが、第2アプリケーションプログラム96には、メイン処理プログラム、音出力プログラム、バックアッププログラムおよび種々の処理プログラムなども含まれる。
【0138】
また、図5では省略するが、プログラム記憶領域90には、他のアプリケーションプログラムも記憶される。
【0139】
図6に示すように、保存用データメモリ56のデータ記憶領域100は、共用データ記憶領域102、第1アプリケーション用記憶領域104および第2アプリケーション用記憶領域106などを含む。
【0140】
共用データ記憶領域102は、実行中のアプリケーションの種類に拘わらず、アクセス可能な領域である。すなわち、いずれのアプリケーションを実行している場合でも、データの読出し・書込みが可能な領域である。この共用データ記憶領域102には、累積歩数データ102a、コイン獲得数データ102b、前回歩数累計データ102c、現在歩数累計データ102d、前回日データ102eおよび前回日歩数データ102fなどが記憶される。累積歩数データ102aは、第1歩数データ1020、第2歩数データ1022、…、第m歩数データ102mを含む。歩数データ1020−102mは、マイコン68で単位時間毎に取得した歩数についてのデータであり、歩数を取得した時間(日付および時刻(時分秒))の情報を含む。ただし、歩数データ(1020、1022、…、102m)は、ゲーム装置10の第2LCD18(または第1LCD16)にメインメニュー画面200が表示された場合に、マイコン68から取得され、データ記憶領域100に記憶される。
【0141】
コイン獲得数データ102bは、獲得総数データ1028および前回獲得数データ1030を含む。獲得総数データ1028は、総獲得コイン数についての数値データである。前回獲得数データ1030は、前回歩数を獲得コインに変換したときの当該獲得コインの数についての数値データである。
【0142】
前回歩数累計データ102cは、前回歩数を獲得コインに変換したときまでの歩数の累計についての数値データである。現在歩数累計データ102dは、現在までの歩数の累計についての数値データである。前回日データ102eは、前回歩数をコインに変換(コイン化)した日(年月日)についてのデータである。前回日歩数データ102fは、前回コイン化した日(年月日)の歩数のうち、コイン化したときまでの歩数についての数値データである。
【0143】
また、第1アプリケーション用記憶領域104は、第1アプリケーションプログラム94を実行している場合にのみアクセス可能な領域である。この第1アプリケーション用記憶領域104には、アイテムデータ104aおよび総通常コイン数データ104bが記憶される。
【0144】
図示は省略するが、アイテムデータ104aは、アイテム(通常アイテム、特殊アイテム)を取得(所持)しているか否かを示すデータであり、各アイテムに対応してフラグが設定されている。以下、単に「アイテム」という場合には、通常アイテムおよび特殊アイテムの両方を意味する。プレイヤ(ユーザ)ないしプレイヤキャラクタがアイテムを有(所持)している場合には、当該アイテムに対応するフラグがオンされる。一方、プレイヤ(ユーザ)ないしプレイヤキャラクタがアイテムを有(所持)していない場合には、当該アイテムに対応するフラグがオフされる。また、総通常コイン数データ104bは、ゲーム内でプレイヤないしプレイヤキャラクタが所持(所有)している通常コインの総数を示す数値データである。この総通常コイン数データ104bが示す通常コインの総数は、ゲーム内でプレイヤないしプレイヤキャラクタが取得することにより増加され、ゲーム内でプレイヤないしプレイヤキャラクタが使用することにより減少される。
【0145】
なお、簡単のため、アイテムデータ104aおよび総通常コイン数データ104bの2つのデータだけを記載してあるが、実際には、アイテムデータ104aおよび総通常コイン数データ104bを含むゲームデータが記憶される。
【0146】
さらに、第2アプリケーション用記憶領域106は、第2アプリケーションプログラム96を実行している場合にのみアクセス可能な領域である。この第2アプリケーション用記憶領域106には、コース許可データ106aが記憶される。図示は省略するが、コース許可データ106aは、特別コースA、Bでプレイすることが許可されているかどうかの許可フラグについてのデータである。特別コースA、Bでプレイすることが許可されている場合には、当該特別コースA、Bに対応するフラグがオンされる。一方、特別コースA、Bでプレイすることが許可されていない場合には、当該特別コースA、Bに対応するフラグがオフされる。
【0147】
なお、簡単のため、コース許可データ106aのみを記載してあるが、実際には、コース許可データ106aを含むゲームデータが記憶される。
【0148】
また、データ記憶領域100には、他のアプリケーション用記憶領域も設けられる。
【0149】
さらに、詳細な説明は省略するが、CPU50によって実行される、本体プログラム92やアプリケーションプログラム(94、96、…)は、メインメモリ52に読み出される(ロードされる)。また、本体プログラム92やアプリケーションプログラム(94、96、…)の実行中に、生成ないし発生するデータはメインメモリ52に保存され、必要に応じて、保存用データメモリ56に記憶(保存)される。
【0150】
図7は、マイコン68に設けられるメモリ68aのメモリマップである。メモリ68aは、プログラム記憶領域150およびデータ記憶領域152を含む。プログラム記憶領域150には、歩数カウントプログラム150aおよび電力制御プログラム150bなどのプログラムが記憶される。
【0151】
歩数カウントプログラム150aは、歩数をカウントするプログラムである。この実施例では、歩数カウントプログラム150aは、加速度センサ88からの加速度データが示す加速度(3軸の加速度)の変化量に基づいて歩数をカウントするためのプログラムである。電力制御プログラム150bは、開閉スイッチ42からのオンまたはオフの信号に応じて、通常モード(非スリープ状態)またはスリープモード(スリープ状態)をCPU50に指示し、CPU50からの指示の下、電源回路70から各回路コンポーネントへの電力供給を制御するためのプログラムである。これによって、ゲーム装置10の使用状態と不使用状態とが切り替えられる。
【0152】
なお、図示は省略するが、プログラム記憶領域150bには、他のプログラムも記憶される。
【0153】
データ記憶領域152には、タイマ152aおよび歩数カウンタ152bが設けられる。タイマ152aは、歩数のカウントの開始からの時間をカウントするためのタイマである。歩数カウンタ152bは、歩数をカウントするためのアップカウンタである。
【0154】
また、データ記憶領域152には、累積歩数データ152cが記憶される。累積歩数データ152cは、第1歩数データ1520、第2歩数データ1522、…、第n歩数データ152nを含む。ここで、各歩数データ(1520、1522、…、152n)は、第1単位時間(この実施例では、1時間)毎の歩数についてのデータである。たとえば、第1歩数データ1520、第2歩数データ1522、…、第n歩数データ152nの順で記憶される。また、メモリ68aは、比較的容量が少ないため、スリープモードでは、第2単位時間(この実施例では、3時間)毎にデータ記憶領域152に記憶された累積歩数データ152cは、CPU50に出力され、メモリ制御回路54を介して、保存用データメモリ56に移動(保存)される。より具体的に説明すると、マイコン68は、CPU50のクロックを動作させるとともに、電源回路70を制御して、メモリ制御回路54および保存用データメモリ56への電源供給を開始した後、累積歩数データ152cをCPU50に出力する。そして、CPU50が、メモリ制御回路54を介して保存用データメモリ56に累積歩数データ152cを記憶する。その後、マイコン68は、CPU50のクロックを停止させ、電源回路70を制御して、メモリ制御回路54および保存用データメモリ56への電力供給を停止させる。
【0155】
図8および図9は、図3に示したCPU50の全体処理である。ゲーム装置10の主電源がオンされると、図8に示すように、CPU50は全体処理を開始し、ステップS1で、図4(A)に示したようなメインメニュー画面200を表示する。続くステップS3では、後述するコイン獲得処理(図10−図12参照)を実行する。そして、ステップS5では、第1アプリケーションが選択されたかどうかを判断する。つまり、メインメニュー画面200で、第1アプリケーションを示すボタン画像202がオンされたかどうかを判断するのである。
【0156】
ステップS5で“YES”であれば、つまり第1アプリケーションが選択されれば、ステップS7で、後述する第1アプリケーション実行処理(図15および図16参照)を実行して、ステップS13に進む。一方、ステップS5で“NO”であれば、つまり第1アプリケーションが選択されていなければ、ステップS9で、第2アプリケーションが選択されたかどうかを判断する。つまり、メインメニュー画面200で、第2アプリケーションを示すボタン画像204がオンされたかどうかを判断するのである。
【0157】
ステップS9で“YES”であれば、つまり第2アプリケーションが選択されれば、ステップS11で、後述する第2アプリケーション実行処理(図17参照)を実行して、ステップS13に進む。一方、ステップS9で“NO”であれば、つまり第2アプリケーションの実行が選択されなければ、そのままステップS13に進む。
【0158】
なお、この実施例では、ステップS9で“NO”の場合、そのままステップS13に進むようにしてあるが、さらに他のアプリケーションが選択可能である場合には、当該他のアプリケーションの実行が選択されたか否かが判断される。
【0159】
また、この実施例では、2つのアプリケーションから1つのアプリケーションを選択可能な場合について示してあるが、1つのアプリケーションのみしか選択できない場合もある。
【0160】
つまり、メモリカード26、28および保存用データメモリ58に記憶されているアプリケーションプログラムの数およびダウンロードしたアプリケーションプログラムの数に応じて、選択可能なアプリケーションの数は可変的に設定されるのである。
【0161】
図8に戻って、ステップS13では、スリープの指示が有るかどうかを判断する。つまり、CPU50は、マイコン68からスリープの指示があるかどうかを判断する。ただし、マイコン68は、開閉スイッチ42がオフされた場合に、スリープをCPU50に指示する。
【0162】
ステップS13で“NO”であれば、つまりスリープの指示が無ければ、ステップS15で、いずれかのアプリケーションを実行中であるかどうかを判断する。ステップS15で“NO”であれば、つまりいずれのアプリケーションも実行中で無ければ、そのままステップS1に戻る。
【0163】
一方、ステップS15で“YES”であれば、つまりいずれかのアプリケーションを実行中であれば、ステップS17で、実行中のアプリケーションを継続する。続いて、ステップS19で、アプリケーションの終了かどうかを判断する。ステップS19では、CPU50は、ユーザないしプレイヤによって、アプリケーションの終了指示があるかどうかを判断する。
【0164】
ステップS19で“NO”であれば、つまりアプリケーションの終了でなければ、そのままステップS17に戻る。一方、ステップS19で“YES”であれば、つまりアプリケーションの終了であれば、図示は省略するが、アプリケーションの実行を終了して、ステップS1に戻る。
【0165】
また、ステップS13で“YES”であれば、つまりスリープの指示が有れば、ステップS21で、マイコン68に歩数のカウント開始を指示する。次のステップS23では、マイコン68にスリープの実行を指示する。したがって、マイコン68は、CPU50のクロックを停止し、電源回路70を制御して、無線通信モジュール64以外の回路コンポーネントへの電力供給を停止する。ただし、CPU50は、アプリケーションの実行中である場合には、メインメモリ52のゲームデータを当該アプリケーション用記憶領域(104、106、…)に記憶した後に、アプリケーションを中断する。
【0166】
なお、上述したように、CPU50およびマイコン68には常に電力が供給されている。
【0167】
続いて、ステップS25では、すれ違い通信処理またはいつの間に通信処理を実行する。ただし、スリープ中では、CPU50のクロックは停止されているため、無線通信モジュール64が他のゲーム装置10やアクセスポイントからの接続要求信号や接続許可信号を受信すると、無線通信モジュール64がCPU50を起動し、CPU50はすれ違い通信処理またはいつの間に通信処理を実行する。このとき、CPU50の指示の下、マイコン68は電源回路70を制御して、メモリ制御回路54および保存用データメモリ56への電力の供給を開始する。
【0168】
次のステップS27では、スリープ解除の指示があるかどうかを判断する。つまり、CPU50は、マイコン68によってクロックが動作されたかどうかを判断する。ステップS27で“NO”であれば、つまりスリープ解除の指示が無ければ、そのままステップS25に戻る。
【0169】
なお、ステップS25およびS27の処理がCPU50によって実行されているように記載してあるが、実際には、スリープ中では、CPU50は何ら処理を実行しない。無線通信モジュール64やマイコン68によってCPU50が起動された場合に、すれ違い通信やいつの間に通信や通常の処理(ゲーム処理など)を実行するのである。
【0170】
また、ステップS27で“YES”であれば、つまりスリープ解除の指示があれば、図9に示すステップS29で、マイコン68にスリープの解除を指示する。続くステップS31では、マイコン68に歩数のカウント終了を指示する。そして、ステップS33で、マイコン68のメモリ68aから歩数値を読み出し、ステップS35で、単位時間毎に日時が付加された歩数値を保存する。
【0171】
つまり、CPU50は、ステップS33で、マイコン68のメモリ68aから累積歩数データ152c(第1−第n歩数データ1520−152n)を読み出し、ステップS35で、保存用データメモリ56のデータ記憶領域100に書き込む。このとき、CPU50は、現在歩数累計データ102dのコピーを前回歩数累計データ102cに書き込み(上書きし)、その後、今回読み出した歩数の合計値を現在歩数累計データ102d(または前回歩数累計データ102c)が示す現在歩数累計(前回歩数累計)に加算して得た歩数の合計値についての数値データを、現在歩数累計データ102dとして記憶(上書き)する。ただし、現在歩数累計データ102dは、累積歩数データ102aが示す歩数の合計値、すなわち第1歩数データ1020、第2歩数データ1022、…、第m歩数データ102mが示す歩数の合計値についての数値データであってもよい。
【0172】
図9に戻って、ステップS37では、いずれかのアプリケーションを実行中であるかどうかを判断する。ここでは、CPU50は、アプリケーションを実行しているときに、スリープが実行され、アプリケーションの実行が中断されていたかどうかを判断するのである。ステップS37で“NO”であれば、つまりいずれのアプリケーションも実行中で無ければ、図8に示したステップS1に戻る。
【0173】
一方、ステップS37で“YES”であれば、つまりいずれかのアプリケーションを実行中であれば、ステップS39で、実行中のアプリケーションに復帰(再開)する。このとき、CPU50は、スリープ前に、アプリケーション用記憶領域(104、106、…)に記憶したゲームデータを読み出して、メインメモリ52に書き込む(ロードする)。続いて、ステップS41で、アプリケーションの実行を継続し、そして、ステップS43で、アプリケーションの終了かどうかを判断する。
【0174】
ステップS43で“NO”であれば、つまりアプリケーションの終了でなければ、そのままステップS41に戻る。一方、ステップS43で“YES”であれば、つまりアプリケーションの終了であれば、図示は省略するが、アプリケーションの実行を終了して、ステップS1に戻る。
【0175】
図10は、図8のステップS3に示したコイン獲得処理のフロー図である。図10に示すように、CPU50は、コイン獲得処理を開始すると、ステップS51で、現在の総獲得コイン数が3000以上であるかどうかを判断する。ただし、上述したように、総獲得コイン数は、獲得総数データ1028が示す獲得コインの総数である。つまり、CPU50は、保存用データメモリ56のデータ記憶領域100に記憶された獲得総数データ1028を参照して、総獲得コイン数が3000以上かどうか(上限であるかどうか)を判断する。
【0176】
ステップS51で“YES”であれば、つまり現在の総獲得コイン数が3000以上であれば、上限に達していると判断して、そのまま全体処理にリターンする。一方、ステップS51で“NO”であれば、つまり現在の総獲得コイン数が3000未満であれば、ステップS53で、現在歩数累計−前回歩数累計が10以上であるかどうかを判断する。ここでは、CPU50は、今回の獲得コインに変換することができる最低の歩数だけ、ユーザないしプレイヤが歩いたかどうかを判断しているのである。つまり、この実施例では、10歩につき、1枚の獲得コインに変換される。ただし、CPU50は、保存データメモリ58のデータ記憶領域100に記憶される、現在歩数累計データ102dが示す現在歩数累計から前回歩数累計データ102cが示す前回歩数累計を減算して、ステップS53の判断処理を実行する。また、歩数を獲得コインに変換する割合は単なる例示であり、これに限定される必要はない。
【0177】
ステップS53で“NO”であれば、つまり現在歩数累計−前回歩数累計が10未満であれば、そのまま全体処理にリターンする。一方、ステップS53で“YES”であれば、つまり現在歩数累計−前回歩数累計が10以上であれば、ステップS55で、変数currentに、前回コイン化した日を代入する。ただし、前回コイン化した日は、前回歩数を獲得コインに変換した日を意味する。
【0178】
続くステップS57では、変数currentの示す日が現在日(今日)であるかどうかを判断する。ステップS57で“YES”であれば、つまり変数currentの示す日が現在日であれば、ステップS59で、変数currentの示す日が前回コイン化した日であるかどうかを判断する。ここでは、CPU50は、前回日データ102eの示す日が変数currentの示す日と一致するかどうかを判断するのである。
【0179】
ステップS59で“NO”であれば、つまり変数currentの示す日が前回コイン化した日でない場合には、前回コイン化した日が現在日と同一日ではないので、ステップS61で、(現在歩数累計−前日までの歩数累計)/10を今回の獲得コイン数として算出して、図11に示すステップS65に進む。ただし、歩数に余りが出る場合には、獲得コインを1加算する。または、歩数に余りが出る場合には、歩数を切り捨てるようにしてもよい。以下、同様である。一方、ステップS59で“YES”であれば、つまり変数currentの示す日が前回コイン化した日である場合には、現在日と同一日に前回コイン化しているので、(現在歩数累計−前回歩数累計)/10を今回の獲得コイン数として算出して、図12に示すステップS83に進む。
【0180】
図11に示すステップS65では、今回の獲得コイン数が100以上であるかどうかを判断する。ステップS65で、“YES”であれば、ステップS67で、今回の獲得コイン数を100に設定(補正)して、総獲得コイン数に加算して、ステップS71に進む。このように、ステップS67の処理を実行することにより、1日に変換できる最大の獲得コインの数を制限している。1日に変換できる獲得コイン数を無制限に認めると、歩く量の異なるユーザないしプレイヤ間で、ゲーム処理に大きな差が出てしまうからである。また、1日に変換できる獲得コイン数を制限することで、継続的に適量の歩行をユーザないしプレイヤに促すことができるからでもある。以下、獲得コイン数を制限する場合について同様である。ただし、1日に変換できる獲得コイン数を無制限に認めるようにしてもよい。一方、ステップS65で“NO”であれば、つまり今回の獲得コイン数が100未満であれば、ステップS69で、現在の総獲得コイン数に今回の獲得コイン数を加算して、ステップS71に進む。
【0181】
また、図12に示すように、ステップS83では、前回の獲得コイン数と、今回の獲得コイン数との和が100以上であるかどうかを判断する。ただし、前回の獲得コイン数は、前回獲得数データ1030が示す獲得コインの数である。ステップS83で“YES”であれば、つまり前回の獲得コイン数と、今回の獲得コイン数との和が100以上であれば、ステップS85で、現在の総獲得コイン数から前回の獲得コイン数を減算した後に、100加算して、図11に示したステップS71に進む。つまり、1日に獲得できる最大の獲得コインの数が制限される。一方、ステップS83で“NO”であれば、つまり前回の獲得コイン数と、今回の獲得コイン数との和が100未満であれば、ステップS87で、現在の総獲得コイン数に、今回の獲得コイン数を加算して、ステップS71に進む。
【0182】
図11に戻って、ステップS71では、前回歩数累計に現在歩数累計を設定し、ステップS73で、前回日歩数に現在日歩数を設定する。さらに、ステップS75で、前回日に現在日を設定し、ステップS77で、前回の獲得コイン数に、今回の獲得コイン数を設定する。ただし、現在日歩数は、累積歩数データ102aのうち、今日の日付が付された第m歩数データ102mが示す歩数の合計値である。現在日は、RTC68bによって計時された時間に基づいて計算される今日の日付である。
【0183】
ここで、この実施例では、簡単のため、ステップS77では、前回の獲得コイン数に、今回の獲得コイン数を設定するようにしてあるが、厳密には、ステップS59で“YES”と判断された場合と、ステップS59で“NO”と判断された場合とで処理が異なる。具体的には、ステップS59で“NO”と判断された場合には、ステップS77の処理はそのままで良いが、ステップS59で“YES”と判断された場合には、ステップS77では、前回の獲得コイン数に、前回の獲得コイン数と今回の獲得コイン数との和が設定される。
【0184】
このようにするのは、1日に3回以上、歩数を獲得コインに変換した場合に、後述するステップS83で、直近の2回分の獲得コインの和が100を超えるかどうかを判断することになってしまい、不都合が生じるからである。
【0185】
そして、ステップS79で、現在の総獲得コイン数が3000以上であるかどうかを判断する。ステップS79で“NO”であれば、そのまま全体処理にリターンする。一方、ステップS79で“YES”であれば、ステップS81で、総獲得コイン数を3000に設定して、全体処理にリターンする。つまり、ステップS81の処理を実行することにより、総獲得コイン数に制限を設けてある。このように、総獲得コイン数に制限を設けるのは、ゲーム装置10を頻繁に持ち歩くユーザないしプレイヤと、ゲーム装置10を頻繁に持ち歩かないユーザないしプレイヤとの間で、ゲーム内容に著しく大きな差異を生じないようにするためである。つまり、ユーザないしプレイヤ間の不公平を低減するためである。
【0186】
また、図10に示したように、ステップS57で“NO”である場合には、図13に示すステップS89で、変数currentの示す日が前回日であるかどうかを判断する。ステップS89で“NO”であれば、つまり変数currentの示す日が前回日でなければ、変数currentの示す日の全歩数が未だコイン化されていないので、ステップS91で、変数currentの示す日の歩数/10を今回の獲得コイン数として算出して、ステップS95に進む。一方、ステップS89で“YES”であれば、つまり変数currentの示す日が前回日であれば、変数currentの示す日の全歩数のうち、一部(前回日歩数)がコイン化され残りがコイン化されていないので、ステップS93で、(変数currentの示す日の歩数−前回日歩数)/10を今回の獲得コイン数として算出して、図14に示すステップS105に進む。
【0187】
ステップS95では、今回の獲得コイン数が100以上であるかどうかを判断する。ステップS95で、“YES”であれば、ステップS97で、今回の獲得コイン数を100に設定して、総獲得コイン数に加算して、ステップS101に進む。一方、ステップS95で“NO”であれば、ステップS99で、現在の総獲得コイン数に今回の獲得コイン数を加算して、ステップS101に進む。
【0188】
また、図14に示すように、ステップS105では、前回の獲得コイン数と今回の獲得コイン数との和が100以上であるかどうかを判断する。ステップS105で“YES”であれば、ステップS107で、現在の総獲得コイン数から前回の獲得コイン数を減算して、100加算し、図13に示したステップS101に進む。一方、ステップS103で“NO”であれば、ステップS109で、現在の総獲得コイン数に、今回の獲得コイン数を加算して、ステップS101に進む。
【0189】
ステップS101では、前回の獲得コイン数に今回の獲得コイン数を設定する。そして、ステップS103で、変数currentに1加算して、図10に示したステップS57に戻る。
【0190】
つまり、ステップS57、S89−109の処理を繰り返すことによって、前回コイン化した日から現在日(今日)の前日までの歩数が日単位でそれぞれ獲得コインに変換される。
【0191】
図15および図16は、図8のステップS7に示した第1アプリケーション実行処理のフロー図である。図15に示すように、CPU50は、第1アプリケーション実行処理を開始すると、ステップS111で、特殊アイテムの購入が選択されたかどうかを判断する。ここでは、CPU50は、図4(B)に示したアイテム購入画面300において、ユーザないしプレイヤによって、ボタン画像310、312がオンされたかどうかを判断するのである。
【0192】
ステップS111で“NO”であれば、つまり特殊アイテムの購入が選択されなければ、図16に示すステップS129に進む。一方、ステップS111で“YES”であれば、つまり特殊アイテムの購入が選択されれば、ステップS113で、特殊アイテム(この実施例では、特殊アイテムA、B)の購入に必要な獲得コインの数NAを取得する。ただし、特殊アイテムA、Bの購入に必要な獲得コインの数NAは予め決定されている。
【0193】
続くステップS115では、獲得総数データ1028が示す現在の総獲得コイン数Tを読み出す。次のステップS117では、総獲得コイン数T≧獲得コインの数NAであるかどうかを判断する。ステップS117で“NO”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NAに満たない場合には、ステップS119で、選択された特殊アイテムを購入できない旨のメッセージを表示して、ステップS127に進む。
【0194】
一方、ステップS117で“YES”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NA以上である場合には、ステップS121で、総獲得コイン数Tに、T−NAを設定して、ステップS123で、選択された特殊アイテムを購入特殊アイテム(所持特殊アイテム)として第1アプリケーション用記憶領域104に記憶する。つまり、選択された特殊アイテムについてのフラグがオンされることによって、アイテムデータ104aが更新される。次のステップS125では、第1アプリケーション用記憶領域104に記憶された購入特殊アイテムを用いた処理を実行し、ステップS127に進む。
【0195】
なお、この実施例では、特殊アイテムを購入した場合に、直ぐにその特殊アイテム(購入特殊アイテム)を用いた処理を実行するようにしてあるが、これは単なる一例であり、ユーザないしプレイヤの指示があったときに、購入特殊アイテムを用いた処理を実行するようにしてもよい。このことは、後述する通常アイテムを購入した場合についても同様である。
【0196】
また、購入特殊アイテムを用いた処理とは、たとえば、購入特殊アイテムが道具である場合には、プレイヤキャラクタがその道具を用いた動作を行う処理が該当する。また、たとえば、購入特殊アイテムを用いることによって、プレイヤキャラクタが一定時間無敵の状態にされる処理が該当する。これらは単なる例示であり、限定されるべきでない。
【0197】
図15に戻って、ステップS127では、その他の処理を実行して、全体処理にリターンする。ステップS127では、CPU50は、プレイヤの指示に従って、プレイヤキャラクタに任意のアクションをさせたり、プレイヤキャラクタを移動させたりする。また、コンピュータ(CPU50)の制御に従って、プレイヤの操作によらないで移動等するノンプレイヤキャラクタに任意のアクションをさせたり、ノンプレイヤキャラクタを移動させたりする。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。
【0198】
図16に示すように、ステップS129では、通常アイテムの購入が選択されたかどうかを判断する。ここでは、CPU50は、図4(B)に示したアイテム購入画面300において、ユーザないしプレイヤによって、ボタン画像302−308のいずれかがオンされたかどうかを判断するのである。ステップS129で“NO”であれば、つまり通常アイテムの購入でなければ、そのまま図15に示したステップS127に進む。一方、ステップS129で“YES”であれば、つまり通常アイテムの購入であれば、ステップS131で、通常アイテム(この実施例では、第1−第4アイテム)の購入に必要な通常コインの数NZを取得する。ただし、第1−第4アイテムの購入に必要な通常コインの数NZは予め決定されている。
【0199】
続くステップS133では、総通常コイン数データ104bが示す現在の総通常コイン数Wを読み出す。次のステップS135では、総通常コイン数W≧獲得コインの数NZであるかどうかを判断する。ステップS135で“NO”であれば、つまり総通常コイン数Wが必要な獲得コインの数NZに満たない場合には、ステップS137で、選択された通常アイテムを購入できない旨のメッセージを表示して、ステップS127に進む。
【0200】
一方、ステップS135で“YES”であれば、つまり総通常コイン数Wが必要な獲得コインの数NZ以上である場合には、ステップS139で、総通常コイン数Wに、W−NZを設定して、ステップS141で、選択された通常アイテムを購入通常アイテム(所持通常アイテム)として第1アプリケーション用記憶領域104に記憶する。つまり、選択された通常アイテムについてのフラグがオンされることによって、アイテムデータ104aが更新される。次のステップS143では、第1アプリケーション用記憶領域104に記憶された購入通常アイテムを用いた処理を実行し、ステップS127に進む。このように、獲得コインを使用しなくても、通常コインを使用して通常アイテムを購入することができる。つまり、獲得コインがなくても、第1アプリケーション(ゲーム)を進行させることができる。
【0201】
図17は、図8に示したステップS11の第2アプリケーション実行処理のフロー図である。図17に示すように、CPU50は、第2アプリケーション実行処理を開始すると、ステップS161で、特別コースが選択されたかどうかを判断する。ここでは、CPU50は、図4(C)に示したコース選択画面400において、ボタン画像410またはボタン画像412がオンされたかどうかを判断する。ステップS161で“NO”であれば、つまり特別コースが選択されていなければ、ステップS163で、通常コースが選択されたかどうかを判断する。ここでは、CPU50は、図4(C)に示したコース選択画面400において、ボタン画像402−408のいずれかがオンされたかどうかを判断する。
【0202】
ステップS163で“NO”であれば、つまり通常コースが選択されていなければ、そのまま全体処理にリターンする。一方、ステップS163で“YES”であれば、つまり通常コースが選択されれば、ステップS165で、選択された通常コースにおけるゲーム処理を実行して、全体処理にリターンする。
【0203】
ただし、ステップS165では、CPU50は、ユーザないしプレイヤの指示に従って、選択された通常コースにおいて、プレイヤキャラクタを移動させる。また、コンピュータ(CPU50)は、選択された通常コースにおいて、ノンプレイヤキャラクタを移動させる。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。このように、獲得コインを使用しなくても、通常コースでプレイすることができる。つまり、獲得コインがなくても、第2アプリケーション(ゲーム)を進行させることができる。
【0204】
また、ステップS161で“YES”であれば、つまり特別コースが選択されれば、ステップS167で、コース許可データ106aを参照して、選択された特別コース(この実施例では、特別コースA、B)の許可フラグがオンであるかどうかを判断する。ステップS167で“YES”であれば、つまり選択された特別コースの許可フラグがオンであれば、そのままステップS183に進む。一方、ステップS167で“NO”であれば、つまり選択された特別コースの許可フラグがオフであれば、ステップS169で、選択された特別コースの許可に必要な獲得コインの数NBを取得する。ただし、特別コースA、Bの許可に必要な獲得コインの数NBは予め決定されている。次のステップS171では、獲得総数データ1028を参照して、現在の総獲得コイン数Tを読み出す。
【0205】
そして、ステップS173で、総獲得コイン数T≧獲得コインの数NBであるかどうかを判断する。ステップS173で“NO”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NBに満たない場合には、ステップS175で、選択された特別コースでプレイできない旨のメッセージを表示して、全体処理にリターンする。一方、ステップS173で“YES”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NB以上であれば、ステップS179で、総獲得コイン数Tに、T−NBを設定し、ステップS181で、選択された特別コースの許可フラグをオンする。したがって、コース許可データ106aが更新される。
【0206】
続いて、ステップS183で、選択された特別コースにおけるゲーム処理を実行して、全体処理にリターンする。ステップS183では、CPU50は、ユーザないしプレイヤの指示に従って、選択された特別コースにおいて、プレイヤキャラクタを移動させる。また、コンピュータ(CPU50)は、選択された特別コースにおいて、ノンプレイヤキャラクタを移動させる。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。
【0207】
なお、上述したように、通常コース(第1−第4コース)は獲得コインの数に拘わらず、選択可能であるため、許可フラグをオンするなどの処理は不要である。
【0208】
図18および図19は、マイコン68の歩数検出処理を示すフロー図である。図18に示すように、マイコン68は、歩数検出処理を開始すると、ステップS201で、タイマ152aをスタートさせる。次のステップS203では、所定値以上の加速度を検出したかどうかを判断する。ステップS203で“NO”であれば、つまり所定値以上の加速度を検出していなければ、歩数を検出していないと判断して、そのまま図19に示すステップS213に進む。一方、ステップS203で“YES”であれば、つまり所定値以上の加速度を検出すれば、歩数を検出したと判断して、ステップS205で、歩数カウンタ152bをインクリメントする。
【0209】
続いて、ステップS207では、第1単位時間を経過したかどうかを判断する。ここでは、マイコン68は、タイマ152aのカウント値を参照して、第1単位時間(1時間)が経過したかどうかを判断する。ステップS207で“NO”であれば、つまり第1単位時間を経過していなければ、そのまま図19に示すステップS217に進む。一方、ステップS207で“YES”であれば、つまり第1単位時間を経過すれば、ステップS209で、歩数カウンタ152bのカウント値に日時を付加してメモリ68aに書き込む。ただし、ステップS209では、単位時間毎のまとまりで第n歩数データ152nが記憶される。このとき、マイコン68は、RTC68bで計時される時間から日付および時刻(日時)を計算し、計算した日時に対応する日時データを第n歩数データ152nに付加する。次のステップS211で、歩数カウンタ152bをリセットして、ステップS213に進む。
【0210】
図19に示すように、ステップS213では、第2単位時間を経過したかどうかを判断する。ここでは、マイコン68は、タイマ152aのカウント値を参照して、第2単位時間(3時間)が経過したかどうかを判断する。ステップS213で“NO”であれば、つまり第2単位時間を経過していなければ、そのままステップS217に進む。一方、ステップS213で“YES”であれば、つまり第2単位時間を経過すれば、ステップS215で、日時の付された歩数値をCPU50に出力し、ステップS217に進む。つまり、ゲーム装置10がスリープ状態であっても、第2単位時間毎に、累積歩数データ152cは保存用データメモリ58に記憶(移動)される。図示は省略するが、上述したように、ステップS215では、マイコン68は、CPU50を起動し、また、CPU50の指示の下、電源回路70を制御して、メモリ制御回路54および保存用データメモリ56に電源の供給を開始する。
【0211】
そして、ステップS217では、終了かどうかを判断する。ここでは、マイコン68は、CPU50から歩数のカウント終了の指示があるかどうかを判断する。ただし、厳密には、開閉スイッチ42がオンされたときに、マイコン68はCPU50のクロックを起動させるとともに、電源回路70を制御して、各回路コンポーネントへの電力供給を開始する。そして、スリープ状態から復帰したCPU50が歩数のカウント終了をマイコン68に指示する。
【0212】
ステップS217で“NO”であれば、つまり終了でなければ、そのまま図18に示したステップS203に戻る。一方、ステップS217で“YES”であれば、つまり終了であれば、歩数検出処理を終了する。
【0213】
また、上述したように、図4(A)に示したメインメニュー画面200では、他のアプリケーション(ここでは、第3アプリケーション、第4アプリケーション)が選択される場合もある。たとえば、図20(A)には、第3アプリケーションのプログラム(第3アプリケーションプログラム)に従うゲーム中に、第2LCD18(第1LCD16でも可)に表示されるヒント表示画面500が示される。また、図20(B)には、第4アプリケーションのプログラム(第4アプリケーションプログラム)に従うゲーム中に、第2LCD18(第1LCD16でも可)に表示される成長画面600が示される。
【0214】
図20(A)に示すように、ヒント表示画面500は、プレイヤキャラクタ502、敵キャラクタ504および背景を含むゲーム画面上に、ヒントを見るかどうかを選択させるための選択画面506が表示される。詳細な説明は省略するが、この選択画面506は、第3アプリケーションプログラム(ゲームプログラム)の処理に従って自動的に、または、プレイヤの指示に従って、表示される。
【0215】
また、選択画面506には、ヒントを見るかどうかを質問するためのテキストが表示されるとともに、ボタン画像508およびボタン画像510が表示される。ボタン画像508がオンされると、ヒントを見ることが選択される。また、ボタン画像510がオンされると、ヒントを見ないことが選択される。
【0216】
ボタン画像508がオンされると、図示しないヒントが表示される。たとえば、敵キャラクタ504を倒す方法やプレイヤが次にすべきことのヒントがテキストで表示されたり、プレイヤキャラクタ502が進むべき方向を矢印などの指示画像で表示したりする。一方、ボタン画像510がオンされると、選択画面506が消去(非表示)される。
【0217】
ただし、ヒントを見る場合には、獲得コインを使用する必要があり、総獲得枚数が、ヒントを見るのに必要な枚数以上でなければ、選択画面506は表示されない。または、選択画面506が表示されたとしても、ヒントを表示することは選択できない。ゆえに、選択画面506中(あるいは、選択画面506とは異なる領域)に、現在の総獲得コイン数と、ヒントを見るのに必要な枚数を表示してもよい。
【0218】
このように、獲得コインを使用することにより、ヒントを表示することができるので、難易度の高いゲームであっても、または、ゲームに不慣れな初心者であっても、当該ゲームを気軽に楽しむことができる。また、ヒントを表示しなくても良いため、ゲームの上級者の場合には、ヒントを見ずにゲームを攻略する爽快感や達成感を得ることができる。したがって、ゲームの習熟度を問わず、あらゆるプレイヤに当該ゲームを楽しんでもらうことができる。
【0219】
なお、ここでは、ヒントを表示することにより、プレイヤのゲームの進行を補助するようにしてあるが、これに限定される必要はない。たとえば、獲得コインを使用することにより、プレイヤキャラクタ502の能力を変化させて、ゲームの進行を補助するようにしてもよい。かかる場合には、プレイヤキャラクタ502の残機数が増加されたり、体力が回復したり、一定時間攻撃力が上がったり、一定時間無敵になったり、味方が増えたりする。また、攻撃回数に制限がある場合には、攻撃回数が増加される。さらに、コンピュータ(CPU50)が、特定の難しいコースやミッションを勝手にクリアしてくれたり、クリアしたことにしてくれたり、敵の弱点を見えるようにしてくれたりしてもよい。さらにまた、ゲームを進めていけば獲得コインを使用しなくても手に入れられるもの(通常のルートで手に入れられるもの)を、ゲームに費やす時間がない場合などに、獲得コインを使用することにより、ゲームを進めなくても即座に入手できるようにしてもよい。
【0220】
また、図20(B)に示す成長画面600には、表示枠602、表示枠604、表示枠606が設けられる。表示枠602には、プレイヤないしプレイヤキャラクタが所持する成長前のキャラクタ650が表示される。表示枠604には、キャラクタ650の成長後のキャラクタ652が表示される。表示枠606には、成長率を高くするかどうかを質問するためのテキストが表示されるとともに、ボタン画像608およびボタン画像610が表示される。ボタン画像608がオンされると、成長率を高くすることが選択される。ボタン画像610がオンされると、成長率を高くしないことが選択される。
【0221】
ボタン画像608がオンされると、キャラクタ650の成長率が変化される。たとえば、通常、キャラクタ650がキャラクタ652に成長するのに、ゲーム内の時間(または、現実の時間)において数時間〜数日かかるところを、一気に成長させたり、数時間〜数日よりも短い時間で成長させたりする。一方、ボタン610がオンされると、成長率を変化させないことが選択され、成長画面600が非表示(消去)され、図示しないゲーム画面に戻る。
【0222】
したがって、獲得コインを使用することにより、ゲームを早送りしてプレイすることができ、第3アプリケーションの場合と同様に、ゲームの進行が補助される。ここでは、キャラクタの成長率を高く(成長を促進)するようにしてあるが、これに限定される必要はない。他の例としては、作物や花の成長が促進されてもよい。また、ビルなどの建築物が完成するまでの時間が短くされてもよい。さらに、たとえば、プレイヤキャラクタを行動(攻撃や防御など)させるのに一定の時間間隔を要するゲームでは、その時間間隔を短くすることができる。さらにまた、成長率を高くすることに変えて、プレイヤやプレイヤキャラクタのレベルが通常のプレイよりも短時間で上昇されてもよい。
【0223】
なお、この実施例では、図20(A)のヒント表示画面500が表示されるゲーム(第3アプリケーション)と、図20(B)の成長画面600が表示されるゲーム(第4アプリケーション)とを別のゲームとして説明してあるが、同じゲーム(アプリケーション)の異なる場面であってもよい。
【0224】
第3アプリケーションや第4アプリケーションをゲーム装置10で実行可能とする場合には、図5に示した保存用データメモリ56に、図21(A)に示すような第3アプリケーションプログラム700および図21(B)に示すような第4アプリケーションプログラム750が記憶される。
【0225】
図21(A)に示すように、第3アプリケーションプログラム700は、画像表示プログラム700a、表示選択プログラム700b、獲得数総数取得プログラム700cおよびヒント表示プログラム700dなどによって構成される。
【0226】
画像表示プログラム700aおよび獲得総数取得プログラム700cは、上述した画像表示プログラム94aおよび獲得総数取得プログラム94cと同様であるため、重複した説明は省略する。
【0227】
表示選択プログラム700bは、プレイヤの指示または所定のイベントに従って、図20(A)に示したようなヒント表示画面500を表示し、このヒント表示画面500において、ボタン画像508またはボタン画像510がオンされたかどうかを判断するためのプログラムである。ヒント表示プログラム700dは、ボタン画像508がオンされたことに応じてヒントを表示するためのプログラムである。
【0228】
図示は省略するが、第3アプリケーションプログラム700には、メイン処理プログラム、音出力プログラム、バックアッププログラムおよび種々の処理プログラムなども含まれる。
【0229】
また、図示は省略するが、保存用データメモリ56のデータ記憶領域100には、第3アプリケーション用記憶領域が設けられ、この第3アプリケーション用記憶領域には、ヒントを出すためのデータを含むゲームデータが記憶される。ただし、ヒントを出すためのデータは、ヒントについてのテキストデータ、画像データ、音声データなどである。
【0230】
また、図21(B)に示すように、第4アプリケーションプログラム750は、画像表示プログラム750a、成長選択プログラム750b、獲得数総数取得プログラム750cおよび成長率変化プログラム750dなどによって構成される。
【0231】
画像表示プログラム750aおよび獲得総数取得プログラム750cは、上述した画像表示プログラム94aおよび獲得総数取得プログラム94cと同様であるため、重複した説明は省略する。
【0232】
成長選択プログラム750bは、プレイヤの指示または所定のイベントに従って、図20(B)に示したような成長画面600を表示し、この成長画面600において、ボタン画像608またはボタン画像610がオンされたかどうかを判断するためのプログラムである。成長率変化プログラム750dは、ボタン画像608がオンされたことに応じてキャラクタの成長率を変化させるためのプログラムである。
【0233】
図示は省略するが、第4アプリケーションプログラム750には、メイン処理プログラム、音出力プログラム、バックアッププログラムおよび種々の処理プログラムなども含まれる。
【0234】
また、図示は省略するが、保存用データメモリ56のデータ記憶領域100には、第4アプリケーション用記憶領域が設けられ、この第4アプリケーション用記憶領域には、所定のキャラクタについての成長率のデータを含むゲームデータが記憶される。
【0235】
図22は第3アプリケーション実行処理のフロー図を示し、図23は第4アプリケーション実行処理のフロー図を示す。図示は省略するが、図8に示したステップS5−S11と同様に、第3アプリケーションや第4アプリケーションが選択されたかどうかが判断され、選択されたアプリケーションが実行される。このような選択および実行の処理が、ステップS9とS13との間に挿入されたり、ステップS5−S11の処理に代えて実行されたりする。
【0236】
図22に示すように、CPU50は、第3アプリケーション実行処理を開始すると、ステップS251で、ヒントの表示が指示されたかどうかを判断する。ここでは、CPU50は、図20(A)に示したヒント表示画面500において、ボタン画像508がオンされたかどうかを判断する。ただし、ヒント表示画面500は、第3アプリケーション実行処理を開始した直後に表示されるのではなく、たとえば、ゲーム内で所定のイベントが発生したり、プレイヤからの指示が入力されたりするなどの所定の条件を満たしたときに、表示される。
【0237】
ステップS251で“NO”であれば、つまりボタン画像508がオンされなければ、ステップS253で、ヒントの非表示が指示されたかどうかを判断する。つまり、CPU50は、図20(A)に示したヒント表示画面500において、ボタン画像510がオンされたかどうかを判断する。
【0238】
ステップS253で“NO”であれば、つまりボタン画像510がオンされなければ、そのままステップS269に進む。一方、ステップS253で“YES”であれば、つまりボタン画像510がオンされれば、ステップS255で、選択画面506を非表示して、ステップS269に進む。
【0239】
また、ステップS251で“YES”であれば、つまりボタン画像508がオンされれば、ステップS257で、ヒントの表示に必要な獲得コインの数NCを取得する。ただし、ヒントの表示に必要な獲得コインの数NCは予め決定されている。
【0240】
続くステップS259では、獲得総数データ1028が示す現在の総獲得コイン数Tを読み出す。次のステップS261では、総獲得コイン数T≧獲得コインの数NCであるかどうかを判断する。ステップS261で“NO”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NCに満たない場合には、ステップS263で、ヒントを表示できない旨のメッセージを表示して、ステップS269に進む。一方、ステップS261で“YES”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NC以上である場合には、ステップS265で、総獲得コイン数Tに、T−NCを設定して、ステップS267で、上述したようなヒントを表示して、ステップS269に進む。すなわち、必要となる獲得コイン数を使って(消費して)、ヒントを表示することができる。
【0241】
ステップS269では、その他の処理を実行して、図8および図9に示した全体処理にリターンする。ステップS269では、たとえば、CPU50は、ステップS267で表示されたヒントに応じたプレイヤの指示に従って、プレイヤキャラクタ502に任意のアクションをさせたり、プレイヤキャラクタ502を移動させたりする。また、コンピュータ(CPU50)の制御に従って、プレイヤの操作によらないで移動等するノンプレイヤキャラクタ(敵キャラクタ504など)に任意のアクションをさせたり、ノンプレイヤキャラクタを移動させたりする。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。
【0242】
また、図23に示すように、CPU50は、第4アプリケーション実行処理を開始すると、ステップS281で、成長率を高くするかどうかを判断する。ここでは、CPU50は、図20(B)に示した成長画面600において、ボタン画像608がオンされたかどうかを判断する。ただし、成長画面600は、第4アプリケーション実行処理を開始した直後に表示されるのではなく、たとえば、ゲーム内で所定のイベントが発生したり、プレイヤからの指示が入力されたりするなどの所定の条件を満たしたときに、表示される。
【0243】
ステップS281で“NO”であれば、つまりボタン画像608がオンされなければ、ステップS283で、成長率を高くしないかどうかを判断する。ここでは、CPU50は、図20(B)に示した成長画面600において、ボタン画像610がオンされたかどうかを判断する。ステップS283で“NO”であれば、つまりボタン画像610がオンされなければ、そのままステップS299に進む。一方、ステップS283で“YES”であれば、つまりボタン画像610がオンされれば、成長率を高くしないと判断し、ステップS285で、成長画面600を非表示して、ステップS299に進む。
【0244】
また、ステップS281で“YES”であれば、つまりボタン画像608がオンされれば、ステップS287で、成長率を高くするのに必要な獲得コインの数NDを取得する。ただし、成長率を高くするのに必要な獲得コインの数NDは予め決定されている。
【0245】
続くステップS289では、獲得総数データ1028が示す現在の総獲得コイン数Tを読み出す。次のステップS291では、総獲得コイン数T≧獲得コインの数NDであるかどうかを判断する。ステップS291で“NO”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NDに満たない場合には、ステップS293で、成長率を高くできない旨のメッセージを表示して、ステップS299に進む。一方、ステップS291で“YES”であれば、つまり総獲得コイン数Tが必要な獲得コインの数ND以上である場合には、ステップS295で、総獲得コイン数Tに、T−NDを設定して、ステップS297で、成長率を変化させて(高くして)、ステップS299に進む。すなわち、必要となる獲得コイン数を使って(消費して)、時間がかかるゲームを早送りのようにしてプレイすることができる。
【0246】
ステップS299では、その他の処理を実行して、図8および図9に示した全体処理にリターンする。ステップS299では、たとえば、CPU50は、ステップS297で変化された成長率に基づいて、キャラクタ650を成長させたり、プレイヤの指示に従って、プレイヤキャラクタないしキャラクタ650に任意のアクションをさせたり、プレイヤキャラクタないしキャラクタ650を移動させたりする。また、コンピュータ(CPU50)の制御に従って、プレイヤの操作によらないで移動等するノンプレイヤキャラクタ(敵キャラクタなど)に任意のアクションをさせたり、ノンプレイヤキャラクタを移動させたりする。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。
【0247】
この実施例によれば、歩数の相関値として変換した獲得コインを共通データ記憶領域に記憶しておき、これをゲーム装置で実行される複数のアプリケーションで共通に用いることができる。また、この実施例では、スリープ状態のゲーム装置を持ち歩くだけで、すれ違い通信により、他のゲーム装置やアクセスポイントからデータを取得することができ、また歩数に応じて特殊アイテムを取得したり、特別コースでプレイできたり、ヒントを得たり、ゲームを早送りしたりすることができる。
【0248】
なお、この実施例では、すれ違い通信機能を備えたゲーム装置について説明したが、他の機能(アプリケーション)を備えたゲーム装置であってもよい。
【0249】
また、この実施例では、メインメニュー画面が表示されたときに、コイン獲得処理を実行するようにしたが、これに限定される必要はない。ゲーム装置がスリープ状態から非スリープ状態に移行したときに実行するようにしてもよい。または、それらの両方で実行するようにしてもよい。
【0250】
さらに、この実施例では、ゲーム装置を閉じた場合に、スリープモードに移行するようにしたが、これに限定される必要はない。ゲーム装置の主電源がオンされている状態(通常モード)で、一定時間(たとえば、10分)操作が無い場合や所定の操作が実行された場合に、スリープモードに移行するようにしてもよい。かかる場合には、スリープ状態において、何らかの操作が実行された場合や所定の操作が実行された場合に、非スリープモード(通常モード)に移行する(戻る)ようにすればよい。
【0251】
さらにまた、この実施例では、省電力モードの一例として、スリープモードを示し、上述したように、ゲーム装置における電力制御などを行うようにしたが、単にLCDの電源をオフするだけでもよい。
【0252】
また、この実施例では、通常アイテムと特殊アイテムとを同じ画面に表示して、購入するアイテムを選択するようにしたが、通常アイテムと特殊アイテムとは異なる画面に表示するようにしてもよい。これは、通常コースと特別コースとについても同様である。
【0253】
さらに、この実施例では、特殊アイテムが選択されたときに、総獲得コイン数と、購入に必要な獲得コイン数とを比較して、特殊アイテムを購入できるかどうかを判断するようにした。他の実施例として、アイテム購入画面を表示する際に、総獲得コイン数と、購入に必要な獲得コインの数とを比較して、特殊アイテムを購入可能かどうかを判断し、購入できない特殊アイテムについては非表示にしたり、グレーアウトしたりしてもよい。このことは、通常アイテムや特別コース(コース選択画面)についても同様である。また、ヒントの表示(ヒント表示画面)および成長率の変化(成長画面)については、総獲得コイン数が必要な獲得コインの数に満たない場合には、画面自体を表示せずに、ヒントを表示したり、成長率を変化したりできない旨を表示するようにしてもよい。
【0254】
さらにまた、この実施例では、歩数を獲得コインに変換して、複数のアプリケーションで共通に使用するようにしたが、歩数をそのまま利用するようにしてもよい。
【0255】
また、ゲーム装置の構成は実施例のものに限定される必要はない。たとえば、カメラは、1つでもよく、無くてもよい。また、タッチパネルを2つのLCD上に設けてもよい。
【0256】
さらに、この実施例では、マイコンは、CPUからの指示により、歩数のカウントを開始/終了するようにしたが、開閉スイッチがオフされたときに歩数のカウントを開始し、開閉スイッチがオンされたときに歩数のカウントを終了するようにしてもよい。
【0257】
さらにまた、この実施例では、共用データ記憶領域のうちのコイン獲得数データが複数のアプリケーションで共用できればよいので、少なくともコイン獲得数データを共用データ記憶領域に含め、それ以外の累積歩数データ、前回歩数累計データ、現在歩数累計データ、前回日データおよび前回日歩数データを共用できない他の記憶領域(たとえば、本体処理専用の記憶領域)に含めるようにしてもよい。
【0258】
また、この実施例では、折り畳み式のゲーム装置を開閉することにより、通常モードとスリープモードとを切り替えるようにしたが、ゲーム装置に開閉可能な蓋を設けて、当該蓋を開閉することにより、通常モードとスリープモードとを切り替えるようにしてもよい。または、ゲーム装置を収容可能なケースを設けて、当該ケースから取り出したり、当該ケースに収容したりすることにより、通常モードとスリープモードとを切り替えるようにしてもよい。つまり、ユーザないしプレイヤが使用しない場合に、スリープモードが設定され、すれ違い通信またはいつの間に通信が実行されるとともに、歩数がカウントされればよい。
【0259】
さらに、携帯ゲーム装置に限らず、携帯電話機、PDAなど、持ち運びが容易な他の携帯情報端末にも適用可能である。
【0260】
この発明はまた、家庭などに設置して使用される据え置き型ゲーム装置、パソコン端末、ゲーム処理のための各処理が複数のコンピュータ等によって分散処理されるようなゲームシステムにも適用可能である。
【0261】
また、上述の実施例では、歩数計の機能をゲーム装置10に持たせるようにしたが、歩数計をゲーム装置10とは別に設けて、歩数計で計測した歩数をゲーム装置が取得するようにしてもよい。たとえば、図24に示すゲームシステム1000は、ゲーム装置10および歩数計1200を含む。ゲーム装置10と歩数計1200とは、たとえばIrDAのような近距離無線通信により互いにデータを送受信する。ただし、有線で接続されて、通信可能としてもよい。
【0262】
なお、ここでは、上述の実施例で示したゲーム装置10を用いるようにしてあるが、ゲーム装置10から加速度センサ88を除去するなどして、歩数計機能を無くしてもよい。
【0263】
また、図24に示すようなゲームシステム1000を構成する場合には、歩数計1200と通信するためのメモリカード28が用いられる。メモリカード28の電気的な構成が図25に示される。
【0264】
図25に示すように、メモリカード28は、メモリカードI/F62に接続される図示しないコネクタと接合されるコネクタ1100を含み、コネクタ1100には、バス1102を介してROM1104およびマイコン1106が接続される。マイコン1106には、バックアップ用メモリ1108およびIr通信用回路1110が接続される。
【0265】
マイコン1106は、CPUコア34の制御下で、バックアップ用メモリ1108の書込みおよび読出し、ならびにIr通信用回路1110を用いた赤外線通信(Ir通信)を制御する。つまり、CPU50は、マイコン1106を介してバックアップ用メモリ1108にデータを書き込み、バックアップ用メモリ1108からデータを読み出す。また、CPU50は、マイコン1106およびIr通信用回路1110を介して、歩数計1200とデータを送受信する。なお、図示しないが、Ir通信用回路1110の通信ポートは、メモリカード28がゲーム装置10に装着されたときに露出する部分(たとえば上端面)に設けられている。
【0266】
ROM1104は、上述したように、ゲーム装置10で実行すべきゲームのためのゲームプログラム、画像データ(キャラクタの画像、背景画像、アイテム画像、アイコン(ボタン)画像、メッセージ画像など)およびゲームに必要な音(音楽)のデータ(音データ)等を予め記憶する。バックアップ用メモリ1108は、そのゲームの途中データやゲームの結果データなどを記憶(セーブ)するためのものである。バックアップ用メモリ1108としては、フラッシュメモリのような不揮発性メモリ、または電池から電源が供給されるSRAMなどが用いられ得る。
【0267】
なお、ゲーム装置10本体にIr通信用回路1110を内蔵し、ゲーム装置10内の保存用データメモリ56にゲームプログラムやセーブデータなどを記憶するようにしてもよい。このようにすれば、歩数計1200と通信するためのメモリカード28は不要で、ゲーム装置10と歩数計1200との間で直接通信を行うことができる。
【0268】
図26は歩数計1200の一例を示す斜視図である。歩数計1200は、略直方体形状のハウジング1202を有し、ハウジング1202は、プレイヤないしユーザのポケット等に簡単に収容可能なように小型化されており、一例として、縦横の長さは3〜4cm程度、厚さは1cm程度である。ハウジング1202の一方主面(上面)には押しボタン1204が設けられる。メモリカード28のIr通信用回路1110が通信待機状態にある場合に、ユーザによってこの押しボタン1204が押されると、歩数計1200はメモリカード28すなわちゲーム装置10と通信を開始する。また、押しボタン1204の端部にはLED1206が設けられる。LED1206は、たとえば2色LEDであり、色や点滅パターンによって、歩数計1200の動作状態を表現する。また、ハウジング1202の側面(先端面)には、赤外線通信ポート1208が設けられる。なお、歩数計1200の動作電源としては、たとえばコイン型リチウム電池(CR2032)が使用され、ハウジング1202の他方主面(下面)には電池蓋が取り外し可能に設けられている。
【0269】
図27は、歩数計1200の電気的な構成の一例を示すブロック図である。歩数計1200はマイコン1210を含み、マイコン1210には、増幅回路1212を介してショックセンサ1214が接続される。また、マイコン1210には、押しボタン1204、LED1206、EEPROM1216およびIr通信用回路1218が接続される。
【0270】
マイコン1210は、歩数計アルゴリズムを内蔵した低消費電力マイコンであり、ショックセンサ1214からの出力データの検出、EEPROM1216の書込みおよび読出し、LED1206の点滅、Ir通信用回路1218を用いた赤外線通信など、歩数計1200の全体動作を制御する。
【0271】
ショックセンサ1214は、プレイヤないしユーザの歩行に応じた動きを検出するためのセンサであり、たとえばHDDの衝撃検知に用いられるショックセンサ(加速度センサ)が適用され得る。ショックセンサ1214は、この実施例では2軸に配置され、これによって、歩数計1200をポケットや鞄等に入れた状態で歩数を計測または検出することが可能になっている。ショックセンサ1214の出力は増幅回路1212で増幅されてマイコン1210に入力される。マイコン1210にはADコンバータが内蔵されているので、マイコン1210はショックセンサ1214の出力をサンプリングして出力データ(加速度データ)を取得する。マイコン1210は、出力データと歩数計アルゴリズムに基づいて歩数をカウントし、単位時間ごとに歩数の累計値(カウント数)を順次EEPROM1216に記憶する。つまり、EEPROM1216には歩数データとして単位時間ごとの歩数値の履歴が保存される。
【0272】
ただし、EEPROM1216の歩数データの保存領域には限りがある。たとえば、1分単位ごとに歩数値を記憶する場合には、EEPROM1216には約7日分の歩数履歴を保存することができる。保存領域が一杯になった場合には、最も古く記憶された歩数値が上書きされる。また、この実施例では、歩数値の記録の単位時間は1分に設定されるが、たとえば1時間、1日などに適宜変更可能である。
【0273】
マイコン1210は、動作状態に応じてLED1206の色や点滅パターンを制御する。たとえば、当日の歩数が予め設定しておいた歩数を超えたときには、LED1206の色が赤から黄緑に変更される。また、押しボタン1204が押されたときには、マイコン1210は、Ir通信用回路1218を用いてゲーム装置10(メモリカード28)との通信を開始するとともに、当該通信開始確認と動作確認のためにLED1206を点滅させる。
【0274】
押しボタン1204が押されることによって通信を開始すると、マイコン1210は、歩数計1200のID(識別情報)を内蔵ROMまたはEEPROM1216から読み出し、当該IDを含むデータをIr通信用回路1218を介してゲーム装置10に送信する。その後、ゲーム装置10から歩数データの要求を受信すると、マイコン1210は、EEPROM1216から必要な歩数データを読み出してゲーム装置10に送信する。
【0275】
なお、ゲーム装置10は、前回歩数計1200から歩数データを受信したときの日時情報を記憶しており、必要な時間または個数の歩数値を要求するので、マイコン1210は、現在の歩数値から過去に遡って、必要な時間または個数の歩数値を読み出して、ゲーム装置10に送信することができる。
【0276】
また、このゲームシステム1000では、ゲーム装置10は、歩数をカウントする必要がなく、歩数データを受信したときに、歩数を獲得コインに換算すれば良い。具体的には、上述した全体処理(図8および図9)において、ステップS21、S31−S35の処理を削除するとともに、ステップS1とステップSS3との間に、歩数データを受信したかどうかを判断するステップを設けて、歩数データを受信したときに、ステップS3のコイン獲得処理を実行すればよい。また、マイコン68は歩数検出処理(図18および図19)を実行する必要がない。
【0277】
なお、歩数を獲得コインに変換する処理は、歩数計1200が行うようにしてもよい。このようにすれば、ゲーム装置10は、歩数計1200から獲得コイン数を受信すればよい。
【符号の説明】
【0278】
10 …ゲーム装置
12,14 …ハウジング
16,18 …LCD
20 …操作ボタン
22 …タッチパネル
24 …タッチペン
26,28 …メモリカード
32,34 …カメラ
50 …CPU
52 …メインメモリ
54 …メモリ制御回路
56 …保存用データメモリ
58 …プリセットデータ用メモリ
60,62 …メモリカードI/F
64 …無線通信モジュール
66 …ローカル通信モジュール
68 …マイコン
68a …メモリ
68b …RTC
70 …電源回路
72 …I/F回路
74,76 …GPU
78,80 …VRAM
82 …LCDコントローラ
84 …マイク
88 …加速度センサ
1000 …ゲームシステム
1200 …歩数計
【技術分野】
【0001】
この発明はゲーム装置、ゲームプログラム、ゲーム制御方法およびゲームシステムに関し、特にたとえば、プレイヤの操作に従ってゲームを進行させる、ゲーム装置、ゲームプログラム、ゲーム制御方法およびゲームシステムに関する。
【背景技術】
【0002】
従来のこの種のゲーム装置の一例が、特許文献1に開示されている。この特許文献1のポイントシステムでは、歩数をポイントに変換し、ポイント数に応じて複数のサービスから希望のサービスを選択できる。具体的には、利用者が電子歩数計を身につけて歩くことによって歩数が計測され、携帯電話に電子歩数計を接続すると、測定された歩数がWEBサーバに送信され、ポイントが付与される。このようにして付与されたポイントを蓄積し、蓄積したポイントを、フィットネスクラブの会費の割引やクラブ内でのショッピングや飲食にかかる費用の割引に使用したり、インターネット上の特定サイトでの割引に使用したり、通常の店舗での割引に使用したりする。
【0003】
また、この種のゲーム装置の他の例が、特許文献2に開示されている。この特許文献2のゲームシステムでは、複数の歩数計でそれぞれ計測された複数の歩数データを無線通信によりゲーム装置に送信することで、ゲーム装置で複数の歩数データを用いた種々のゲームが実行できる。たとえば、同時間に歩いたプレイヤの数によって内容が変化するゲームや、複数のプレイヤの歩数の合算値によって内容が変化するゲームなどが開示されている。
【特許文献1】特開2003−316905号公報
【特許文献2】特開2009−254539号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、特許文献1のポイントシステムでは、歩数計で測定された歩数に応じて蓄積されたポイントをサービスの割引等に使用するものであり、ゲームに利用するものではない。
【0005】
また、特許文献2のゲームシステムでは、歩数計で測定された歩数を用いて種々のゲームを実行するものであるが、ゲームに歩数を用いることが前提になっていた。
【0006】
それゆえに、この発明の主たる目的は、新規な、ゲーム装置、ゲームプログラム、ゲーム制御法およびゲームシステムを提供することである。
【0007】
また、この発明の他の目的は、ゲームの進行を補助するために歩数を利用することができる、ゲーム装置、ゲームプログラム、ゲーム制御方法およびゲームシステムを提供することである。
【課題を解決するための手段】
【0008】
第1の発明は、入力手段を備えるゲーム装置であって、歩数計測手段、ゲーム処理手段、および利用手段を備える。歩数計測手段は、歩数を計測する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数計測手段によって計測された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0009】
第1の発明によれば、歩数を利用することによってゲームの進行を補助するので、たとえば、ゲームの苦手なユーザでも歩くことによってゲームを容易に進めることができるので、ユーザの間口を広げることができる。
【0010】
第2の発明は、第1の発明に従属し、利用手段は、入力手段からの入力に基づいて、歩数をゲームに利用する。ゲーム処理手段は、利用手段によって歩数が利用されないときは、入力手段からの入力に基づいてゲームを進行させるゲーム処理を実行し、利用手段によって歩数が利用されたときは、当該ゲーム処理に加えて当該ゲームの進行を支援する補助処理を実行する。
【0011】
第2の発明によれば、歩数を利用しなくてもゲームを進行させることができ、歩数を利用すればゲームの進行を支援する補助処理を行うので、ユーザのゲームの熟練度に応じて、歩数を利用するかどうかを選択させることができる。したがって、ゲームの上級者も初心者も、分け隔てなくゲームを楽しむことができ、ユーザの間口を広げることができる。
【0012】
第3の発明は、第1または第2の発明に従属し、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行のヒントとなる情報を出力する。たとえば、敵を倒す方法や手がかりを示したり、プレイヤキャラクタが進行するべき方向を示したりする。
【0013】
第3の発明によれば、歩数を利用することによりヒントを得ることができるので、難易度の高いゲームであっても歩くことによってゲームを進め易くすることができる。
【0014】
第4の発明は、第1または第2の発明に従属し、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行に要する時間を低減する処理を実行する。たとえば、ゲームが早送りプレイされる。したがって、キャラクタの成長率を高くしたり、レベルアップにかかる時間が短縮されたりする。
【0015】
第4の発明によれば、歩数を利用することによってゲームを早く進めることができるので、歩くことによってゲームを効率良くプレイすることができる。
【0016】
第5の発明は、第1ないし第4の発明のいずれかに従属し、ゲーム装置は、歩数計測手段によって計測された歩数を当該歩数に相関する歩数相関値に変換して蓄積する蓄積手段をさらに備える。利用手段は、蓄積手段によって蓄積された歩数相関値をゲームに利用する。
【0017】
第5の発明によれば、歩数を歩数相関値に変換して蓄積するので、歩数を後でゲームの進行を補助するために利用することができる。
【0018】
第6の発明は、第5の発明に従属し、利用手段は、歩数相関値が所定値以上である場合に、当該歩数相関値をゲームに利用する。
【0019】
第6の発明によれば、歩数相関値が所定値以上である場合に、当該歩数相関値をゲームに利用することができるので、一定以上歩かなければゲーム進行の補助を得ることができないので、ユーザに歩く動機付けを与えることができる。
【0020】
第7の発明は、第6の発明に従属し、利用手段によって歩数相関値がゲームに利用されたとき、当該歩数相関値を減少させる減算手段をさらに備える。
【0021】
第7の発明によれば、ゲーム進行の補助を行うたびに歩数相関値を減少させるので、ユーザに継続的に歩く動機付けを与えることができる。
【0022】
第8の発明は、第1ないし第7の発明のいずれかに従属し、ゲーム装置の不使用状態と使用状態とを切り替える切替手段、および使用状態から不使用状態になったかどうかを判別する切替判別手段をさらに備える。歩数計測手段は、切替判別手段によって不使用状態になったことが判別されたとき、歩数を計測する。つまり、ゲーム装置を使用しないときに、歩数を計測するのである。
【0023】
第8の発明によれば、ユーザないしプレイヤが機器を使用していないときに、歩数計として使用することができる。したがって、機器を使用していなくても外で持ち歩いてもらう動機付けを与えることができる。
【0024】
第9の発明は、第8の発明に従属し、切替手段は、省電力モードと通常モードとを切り替ええる。切替判別手段は、通常モードから省電力モードになったかどうかを判別することによって使用状態から不使用状態になったかどうかを判別する。
【0025】
第9の発明においても、ユーザないしプレイヤが機器を使用していないときに、歩数計として使用することができる。
【0026】
第10の発明は、第8の発明に従属し、ゲーム処理手段を不能化する不能化手段をさらに備える。切替手段は、不能化手段によってゲーム処理手段が不能化されることによって使用状態から不使用状態に切り替える。
【0027】
第10の発明においても、ユーザないしプレイヤが機器を使用していないときに、歩数計として使用することができる。
【0028】
第11の発明は、第8の発明に従属し、装置本体は開閉可能な機構を有する。たとえば、装置の蓋を開閉したり、装置自体を開閉したりする。切替手段は、装置本体が閉じられている状態と開かれている状態とを切り替える。切替判別手段は、装置本体が開かれている状態から閉じられている状態になったかどうかを判別することによって使用状態から不使用状態になったかどうかを判別する。
【0029】
第11の発明においても、ユーザないしプレイヤが機器を使用していないときに、歩数計として使用することができる。
【0030】
第12の発明は、第1ないし第11の発明のいずれかに従属し、通信手段をさらに備える。通信手段は、歩数計測手段によって歩数が計測される間、自動的に通信処理を実行する。
【0031】
第12の発明によれば、ユーザないしプレイヤが機器を使用していないときに、さらに、データを送信したり、受信したり、送受信したりするような通信処理を自動的に実行するので、他の装置やアクセスポイントからデータを収集したり、他の装置やアクセスポイントにデータを送信したりすることができる。また、歩数が計測される間に自動的に通信処理を行うので、ユーザないしプレイヤが機器を外で持ち歩いている間に、他のユーザないしプレイヤが持ち歩いている機器や街中に設置されているアクセスポイントとの間で知らないうちに通信が行われる。したがって、ユーザに驚きや興趣性を与えることができるとともに、ユーザの歩く意欲をより引き出すことができる。
【0032】
第13の発明は、第1ないし第12の発明のいずれかに従属し、通信手段は、他のゲーム装置の探索を自動的に行い、探索されたとき、当該他のゲーム装置との間でデータの送受信を自動的に実行する。
【0033】
第13の発明においても、第12の発明と同様に、ユーザないしプレイヤが機器を外で持ち歩いている間に、他のユーザないしプレイヤが持ち歩いている機器との間で知らないうちに自動的に通信が行われるので、ユーザに驚きや興趣性を与えることができるとともに、ユーザの歩く意欲をより引き出すことができる。
【0034】
第14の発明は、第1ないし第12の発明のいずれかに従属し、通信手段は、所定のアクセスポイントの探索を自動的に行い、探索されたとき、当該アクセスポイントを介したデータの送受信を自動的に実行する。
【0035】
第14の発明においても、第12の発明と同様に、ユーザないしプレイヤが機器を外で持ち歩いている間に、街中に設置されているアクセスポイントを介して知らないうちに自動的に通信が行われるので、ユーザに驚きや興趣性を与えることができるとともに、ユーザの歩く意欲をより引き出すことができる。
【0036】
第15の発明は、入力手段を備えるゲーム装置であって、歩数取得手段、ゲーム処理手段および利用手段を備える。歩数取得手段は、歩数を取得する。たとえば、ゲーム装置は、別に設けられる歩数計で計測した歩数を取得する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数取得手段によって取得された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0037】
第16の発明は、入力手段を備えるゲーム装置のゲームプログラムであって、ゲーム装置のコンピュータを、歩数計測手段、ゲーム処理手段、および利用手段として機能させる。歩数計測手段は、歩数を計測する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる利用手段は、歩数計測手段によって計測された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0038】
第17の発明は、入力手段を備えるゲーム装置のゲームプログラムであって、ゲーム装置のコンピュータを、歩数取得手段、ゲーム処理手段、および利用手段として機能させる。歩数取得手段は、歩数を取得する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数取得手段によって取得された歩数をゲームに利用する。そしてゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0039】
第18の発明は、入力手段を備えるゲーム装置のゲーム制御方法であって、(a)歩数を計測し、(b)入力手段からの入力に基づいてゲームを進行させ、そして(c)ステップ(a)によって計測された歩数をゲームに利用し、ステップ(b)は、ステップ(c)によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0040】
第19の発明は、入力手段を備えるゲーム装置のゲーム制御方法であって、(a)歩数を取得し、(b)入力手段からの入力に基づいてゲームを進行させ、そして(c)ステップ(a)によって取得された歩数をゲームに利用し、ステップ(b)は、ステップ(c)によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0041】
第20の発明は、入力手段を備えるゲームシステムであって、歩数計測手段、ゲーム処理手段、および利用手段を備える。歩数計測手段は、歩数を計測する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数計測手段によって計測された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0042】
第21の発明は、入力手段を備えるゲーム装置および歩数を計測する歩数計を備えるゲームシステムであって、ゲーム装置は、歩数取得手段、ゲーム処理手段、および利用手段を備える。歩数取得手段は、歩数計から歩数を取得する。ゲーム処理手段は、入力手段からの入力に基づいてゲームを進行させる。利用手段は、歩数取得手段によって取得された歩数をゲームに利用する。そして、ゲーム処理手段は、利用手段によって歩数が利用されたとき、ゲームの進行を補助する処理を実行する。
【0043】
第15ないし第21の発明においても、第1の発明と同様に、ユーザの間口を広げることができる。
【発明の効果】
【0044】
この発明によれば、歩数を利用することによりゲームの進行を補助するので、ゲームの苦手なユーザでも歩くことによってゲームを容易に進めることができ、ユーザの間口を広げることができる。
【0045】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0046】
【図1】図1はこの発明のゲーム装置の外観構成の一実施例を示す図解図である。
【図2】図2は図1に示すゲーム装置を折り畳んだ状態の上面図および左側面図を示す図解図である。
【図3】図3は図1および図2に示すゲーム装置の電気的な構成を示すブロック図である。
【図4】図4は図1−図3に示すゲーム装置の第1LCDまたは第2LCDに表示される画面の例を示す図解図である。
【図5】図5は図3に示す保存用データメモリのメモリマップの例を示す図解図である。
【図6】図6は図5に示すデータ記憶領域の詳細な内容を示す図解図である。
【図7】図7は図3に示すマイコンに内蔵されるメモリのメモリマップの例を示す図解図である。
【図8】図8は図3に示すCPUの全体処理の一部を示すフロー図である。
【図9】図9は図3に示すCPUの全体処理の他の一部であって、図8に後続するフロー図である。
【図10】図10は図3に示すCPUのコイン獲得処理の一部を示すフロー図である。
【図11】図11は図3に示すCPUのコイン獲得処理の第2の一部であって、図10に後続するフロー図である。
【図12】図12は図3に示すCPUのコイン獲得処理の第3の一部であって、図10に後続するフロー図である。
【図13】図13は図3に示すCPUのコイン獲得処理の第4の一部であって、図10に後続するフロー図である。
【図14】図14は図3に示すCPUのコイン獲得処理の第5の一部を示すフロー図である。
【図15】図15は図3に示すCPUの第1アプリケーション実行処理の一部を示すフロー図である。
【図16】図16は図3に示すCPUの第1アプリケーション実行処理の他の一部を示すフロー図である。
【図17】図17は図3に示すCPUの第2アプリケーション実行処理を示すフロー図である。
【図18】図18は図3に示すマイコンの歩数検出処理の一部を示すフロー図である。
【図19】図19は図3に示すマイコンの歩数検出処理の他の一部であって、図18に後続するフロー図である。
【図20】図20は図1−図3に示すゲーム装置の第1LCDまたは第2LCDに表示される画面の他の例を示す図解図である。
【図21】図21は図3に示すメインメモリのデータ記憶領域に記憶されるアプリケーションプログラムの他の例を示す図解図である。
【図22】図22は図3に示すCPUの第3アプリケーション実行処理を示すフロー図である。
【図23】図23は図3に示すCPUの第4アプリケーション実行処理を示すフロー図である。
【図24】図24はこの発明のゲームシステムの一例を示す図解図である。
【図25】図25は図24に示すゲームシステムを構成する場合のメモリカードの電気的な構成を示す図解図である。
【図26】図26は図24に示す歩数計の外観の一例を示す斜視図である。
【図27】図27は図24および図26に示す歩数計の電気的な構成を示すブロック図である。
【発明を実施するための形態】
【0047】
図1を参照して、この発明の実施例のゲーム装置10は、上側ハウジング12および下側ハウジング14を含み、上側ハウジング12と下側ハウジング14とは、開閉可能(折り畳み可能)に連結されている。図1の例では、上側ハウジング12および下側ハウジング14は、それぞれ横長の長方形の板状に形成され、互いの長辺部分で回動可能に連結されている。つまり、この実施例のゲーム装置10は、折り畳み式の携帯型のゲーム装置であり、図1には、当該ゲーム装置10を開いた状態(開状態)で示してある。ゲーム装置10は、開いた状態においてもユーザが両手または片手で把持することができるようなサイズで構成される。
【0048】
通常、ユーザは、開状態でゲーム装置10を使用する。また、ユーザは、ゲーム装置10を使用しない場合には閉状態で保管する。ただし、ゲーム装置10は、上記閉状態および開状態のみでなく、上側ハウジング12と下側ハウジング14とのなす角度が閉状態と開状態との間の任意の角度において、連結部分に発生する摩擦力などによってその開閉角度を維持することができる。つまり、上側ハウジング12を下側ハウジング14に対して任意の角度で静止させることができる。
【0049】
なお、ゲーム装置10は、後述するカメラ(32,34)を搭載しており、当該カメラ(32,34)によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりする撮像装置としても機能する。
【0050】
図1に示すように、上側ハウジング12には第1LCD16が設けられ、下側ハウジング14には第2LCD18が設けられる。第1LCD16および第2LCD18は、横長形状であり、それぞれの長辺方向が上側ハウジング12および下側ハウジング14の長辺方向と一致するように配置される。たとえば、第1LCD16および第2LCD18の解像度は、256(横)×192(縦)画素(ドット)に設定される。
【0051】
なお、この実施例では、表示器としてLCDを用いるようにしてあるが、LCDに代えて、EL(Electronic Luminescence)ディスプレイやプラズマディスプレイを用いるようにしてもよい。また、ゲーム装置10は、任意の解像度の表示装置を利用することができる。
【0052】
図1および図2に示すように、下側ハウジング14には、入力装置として、各操作ボタン20a−20kが設けられる。この各操作ボタン20a−20kのうち、方向入力ボタン20a、操作ボタン20b、操作ボタン20c、操作ボタン20d、操作ボタン20e、電源ボタン20f、スタートボタン20g、およびセレクトボタン20hは、下側ハウジング14の第2LCD18が設けられる側の面(内側の面)に配置される。具体的には、方向入力ボタン20aおよび電源ボタン20fは、第2LCD18の左側に配置され、操作ボタン20b−20e,20gおよび20hは、第2LCD18の右側に配置される。また、上側ハウジング12と下側ハウジング14とを折り畳んだときには、操作ボタン20a−20hはゲーム装置10の内部に収められる。
【0053】
方向入力ボタン(十字キー)20aは、ディジタルジョイスティックとして機能し、プレイヤオブジェクトの移動方向を指示したり、カーソルを移動させたりするなどに用いられる。各操作ボタン20b−20eは、プッシュボタンであり、たとえば、プレイヤオブジェクトに任意の動作をさせたり、決定やキャンセルを実行したりする等に用いられる。電源ボタン20fは、プッシュボタンであり、ゲーム装置10の主電源をオン/オフするために用いられる。スタートボタン20gは、プッシュボタンであり、ゲームを中断(ポーズ)したり、開始(再開)したりするために用いられる。セレクトボタン20hは、プッシュボタンであり、ゲームモードやメニューの選択等に用いられる。
【0054】
図1においては、操作ボタン20i−20kを省略したが、図2(A)に示すように、操作ボタン(Lボタン)20iは、下側ハウジング14の上側面の左端部に設けられ、操作ボタン(Rボタン)20jは、下側ハウジング14の上側面の右端部に設けられる。また、図2(B)に示すように、音量ボタン20kは、下側ハウジング14の左側面に設けられる。
【0055】
なお、図2(A)は、ゲーム装置10を折り畳んだ状態で、上面(上ハウジング12)側から見た図であり、図2(B)は、同じくゲーム装置10を折り畳んだ状態で、左側面から見た図である。
【0056】
Lボタン20iおよびRボタン20jは、プッシュボタンであり、操作ボタン20b−20eと同様の操作に用いたり、それらの操作ボタン20b−20eの補助的な操作に用いたりすることができる。また、この実施例では、Lボタン20iおよびRボタン20jは、撮影指示の操作(シャッター操作)を行うために用いることもできる。音量ボタン20kは、2つのプッシュボタンを用いて構成され、図示しない2つのスピーカ(右スピーカおよび左スピーカ)から出力される音の大きさを調整するために用いられる。この実施例では、音量ボタン20kには、2つの押圧部を含む操作部が設けられ、各押圧部に対応して上記のプッシュボタンが設けられる。したがって、一方の押圧部を押すと音量が大きくされ、他方の押圧部を押すと音量が小さくされる。たとえば、押圧部を押し続けると、音量が次第に大きくされたり、次第に小さくされたりする。
【0057】
図1に戻って、ゲーム装置10は、操作ボタン20a−20kとは別の入力装置として、さらにタッチパネル22を備えている。タッチパネル22は、第2LCD18の画面上を覆うように装着されている。この実施例では、タッチパネル22は、たとえば抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル22は、抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。また、この実施例では、タッチパネル22として、たとえば第2LCD18の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル22の解像度と第2LCD18の解像度とが一致している必要はない。
【0058】
また、下側ハウジング14の右側面には、挿入口(図1に示す破線)が設けられている。挿入口は、タッチパネル22に対する操作を行うために用いられるタッチペン24を収納することができる。通常、タッチパネル22に対する入力は、タッチペン24を用いて行われるが、タッチペン24に限らずユーザの指でタッチパネル22を操作することも可能である。したがって、たとえば、タッチペン24を用いない場合には、タッチペン24の挿入口および収納部を設ける必要はない。
【0059】
また、下側ハウジング14の右側面には、メモリカード26を収納するための挿入口(図1では、二点鎖線で示している)が設けられている。この挿入口の内側には、ゲーム装置10とメモリカード26とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード26は、たとえばSDカードであり、コネクタに着脱自在に装着される。このメモリカード26は、たとえば、ゲーム装置10によって撮像された画像を記憶(保存)したり、他の装置で生成(撮像)ないし記憶された画像をゲーム装置10に読み込んだりするために用いられる。
【0060】
さらに、下側ハウジング14の上側面には、メモリカード28を収納するための挿入口(図1では、一点鎖線で示している)が設けられている。この挿入口の内側にも、ゲーム装置10とメモリカード28とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード28は、情報処理プログラムおよび必要なデータなどを記録した記録媒体であり、下側ハウジング14に設けられた挿入口に着脱自在に装着される。
【0061】
また、上側ハウジング12と下側ハウジング14との連結部(ヒンジ)の左端部分には、インジケータ30が設けられる。このインジケータ30は、3つのLED30a,30b,30cによって構成される。ここで、ゲーム装置10は、他の機器との間で無線通信を行うことが可能であり、第1LED30aは、無線通信が確立している場合に点灯する。第2LED30bは、ゲーム装置10の充電中に点灯する。第3LED30cは、ゲーム装置10の主電源がオンである場合に点灯する。したがって、インジケータ30(LED30a−30c)によって、ゲーム装置10の通信確立状況、充電状況、および主電源のオン/オフ状況をユーザに通知することができる。
【0062】
図示は省略するが、ヒンジの内部には、ゲーム装置10の開閉に応じて切り替えられるスイッチ(開閉スイッチ42:図3参照)が設けられる。たとえば、ゲーム装置10を開いている状態では、開閉スイッチ42はオンされる。一方、ゲーム装置10を閉じている(折り畳んでいる)状態では、開閉スイッチ42はオフされる。ただし、ゲーム装置10が開いている状態であるか閉じている状態であるかが分かればよいため、開閉スイッチ42のオンとオフとは逆であっても構わない。
【0063】
上述したように、上側ハウジング12には、第1LCD16が設けられる。この実施例では、第2LCD18を覆うように、タッチパネル22を設けているが、第1LCD16を覆うように、タッチパネル22を設けてもよい。または、第1LCD16および第2LCD18のそれぞれを覆うように、2つのタッチパネル22を設けるようにしてもよい。たとえば、第2LCD18には、各操作ボタン20a−20kやタッチパネル22の役割ないし操作方法をユーザに教えるための操作説明画面やゲーム画面が表示される。
【0064】
また、上側ハウジング12には、2つのカメラ(内側カメラ32および外側カメラ34)が設けられる。図1に示すように、内側カメラ32は、上側ハウジング12と下側ハウジング14との連結部付近であり、第1LCD16が設けられる側の面に、この第1LCD16の表示面とその撮影面とが平行または面一になるように取り付けられる。一方、外側カメラ34は、図2(A)に示すように、内側カメラ32が取り付けられる面とは反対側の面、すなわち、上側ハウジング12の外側の面(ゲーム装置10が閉状態となった場合に外側となる面であり、図1に示す上側ハウジング12の背面)に取り付けられる。ただし、図1においては、外側カメラ34を破線で示してある。
【0065】
したがって、内側カメラ32は、上側ハウジング12の内側の面が向く方向を撮像することが可能であり、外側カメラ34は、内側カメラ32の撮像方向の逆方向、すなわち、上側ハウジング12の外側の面が向く方向を撮像することが可能である。このように、この実施例では、内側カメラ32および外側カメラ34の撮像方向が互いに逆方向となるように、それら2つのカメラ32,34が設けられる。たとえば、ゲーム装置10を把持したユーザは、このゲーム装置10側からユーザの方を見た景色(たとえば、当該ユーザを含む)を内側カメラ32で撮像することができるとともに、ゲーム装置10側からユーザとは反対側の方向を見た景色を外側カメラ34で撮像することができる。
【0066】
なお、上記連結部付近の内側の面には、音声入力装置としてマイク84(図3参照)が収納されている。そして、上記連結部付近の内側の面には、マイク84がゲーム装置10外部の音を検知できるように、そのマイク84用の孔36が形成される。マイク84を収納する位置およびマイク84用の孔36の位置は必ずしも上記連結部である必要はなく、たとえば下側ハウジング14にマイク84を収納し、マイク84の収納位置に対応させて下側ハウジング14にマイク84用の孔36を設けるようにしてもよい。
【0067】
また、上側ハウジング12の外側の面には、外側カメラ34の近傍に第4LED38(図1では、破線で示す)が取り付けられる。第4LED38は、内側カメラ32または外側カメラ34によって撮影が行われた(シャッターボタンが押下された)時点で点灯する。また、内側カメラ32または外側カメラ34によって動画が撮影される場合には、第4LED38は、撮影の間点灯し続ける。つまり、第4LED38を点灯することによって、ゲーム装置10による撮影が行われた(行われている)ことを撮影対象者や周囲に通知することができる。
【0068】
また、上側ハウジング12には、第1LCD16の両側に、音抜き孔40が形成される。この音抜き孔40に対応する位置であり、上側ハウジング12の内部には、上述したスピーカが収納されている。音抜き孔40は、スピーカからの音をゲーム装置10の外部に放出するための孔である。
【0069】
以上に説明したように、上側ハウジング12には、画像を撮像するための構成である内側カメラ32および外側カメラ34と、主として、撮影された画像(撮影画像)およびゲーム画面を表示するための表示手段である第1LCD16とが設けられる。一方、下側ハウジング14には、ゲーム装置10に対する操作入力を行うための入力装置(操作ボタン20(20a−20k)およびタッチパネル22)と、主として、操作画面およびゲーム画面を表示するための表示手段である第2LCD18とが設けられる。したがって、ゲーム装置10は、2つの画面(16,18)および2系統の操作部(20,22)を備えている。
【0070】
図3は、この実施例のゲーム装置10の電気的な構成を示すブロック図である。図3に示すように、ゲーム装置10は、CPU50、メインメモリ52、メモリ制御回路54、保存用データメモリ56、プリセットデータ用メモリ58、メモリカードインターフェース(メモリカードI/F)60、メモリカードI/F62、無線通信モジュール64、ローカル通信モジュール66、マイコン68、電源回路70、インターフェース回路(I/F回路)72、第1GPU(Graphics Processing Unit)74、第2GPU76、第1VRAM(Video RAM)78、第2VRAM80、およびLCDコントローラ82等の電子部品を備えている。これらの電子部品(回路コンポーネント)は、電子回路基板上に実装されて、下側ハウジング14(または上側ハウジング12でもよい)内に収納される。
【0071】
CPU50は、所定のプログラムを実行するための情報処理手段である。この実施例では、所定のプログラムは、ゲーム装置10内のメモリ(たとえば保存用データメモリ56)やメモリカード26および/または28に記憶されており、CPU50は、当該所定のプログラムを実行することによって、後述する情報処理(この実施例では、ゲーム処理)を実行する。
【0072】
なお、CPU50によって実行されるプログラムは、ゲーム装置10内のメモリに予め記憶していてもよいし、メモリカード26および/または28から取得してもよいし、他の機器と通信することによって当該他の機器から取得してもよい。
【0073】
CPU50には、メインメモリ52、メモリ制御回路54、およびプリセットデータ用メモリ58が接続される。また、メモリ制御回路54には、保存用データメモリ56が接続される。メインメモリ52は、CPU50のワーク領域やバッファ領域として用いられる記憶手段である。すなわち、メインメモリ52は、上記情報処理に用いられる各種データを記憶(一時記憶)したり、外部(メモリカード26および28や他の機器等)から取得されるプログラムを記憶したりする。この実施例では、メインメモリ52として、たとえばPSRAM(Pseudo−SRAM)を用いる。保存用データメモリ56は、CPU50によって実行されるプログラムや内側カメラ32および外側カメラ34によって撮像された画像のデータ等を記憶(保存)するための記憶手段である。この保存用データメモリ56は、不揮発性の記憶媒体によって構成されており、たとえば、NAND型フラッシュメモリを用いることができる。メモリ制御回路54は、CPU50の指示に従って、保存用データメモリ56に対するデータの読み出しおよび書き込みを制御する。プリセットデータ用メモリ58は、ゲーム装置10において予め設定される各種パラメータ等のデータ(プリセットデータ)を記憶するための記憶手段である。プリセットデータ用メモリ58としては、SPI(Serial Peripheral Interface)バスによってCPU50と接続されるフラッシュメモリを用いることができる。
【0074】
メモリカードI/F60および62は、それぞれCPU50に接続される。メモリカードI/F60は、コネクタに装着されたメモリカード26に対するデータの読み出しおよび書き込みを、CPU50の指示に応じて行う。また、メモリカードI/F62は、コネクタに装着されたメモリカード28に対するデータの読み出しおよび書き込みを、CPU50の指示に応じて行う。この実施例では、内側カメラ32および外側カメラ34によって撮像された画像に対応する画像データや他の装置から受信された画像データがメモリカード26に書き込まれたり、メモリカード26に記憶された画像データがメモリカード26から読み出されて保存用データメモリ56に記憶されたり、他の装置へ送信されたりする。また、メモリカード28に記憶された各種プログラムが、CPU50によって読み出されて実行されたりする。
【0075】
なお、ゲームプログラムなどの情報処理プログラムは、メモリカード28等の外部記憶媒体を通じてゲーム装置10に供給されるだけでなく、有線または無線の通信回線を通じてゲーム装置10に供給されてもよい。また、情報処理プログラムは、ゲーム装置10内部の不揮発性記憶装置に予め記録されていてもよい。さらに、情報処理プログラムを記憶する情報記憶媒体としては、上記不揮発性記憶装置に限らず、CD−ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体でもよい。
【0076】
無線通信モジュール64は、たとえばIEEE802.11.b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール66は、所定の通信方式により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール64およびローカル通信モジュール66は、CPU50に接続される。CPU50は、無線通信モジュール64を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール66を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0077】
また、CPU50には、マイコン68が接続される。マイコン68は、メモリ68aおよびRTC68bを含む。メモリ68aは、たとえばRAMであり、マイコン68による制御のためのプログラムやデータが記憶される。RTC68bは、時間をカウントする。マイコン68では、RTC68bによって計時された時間に基づいて、日付および現在時刻等を計算することもできる。
【0078】
マイコン68には、電源スイッチ20f、開閉スイッチ42、電源回路70、および加速度センサ88が接続される。電源スイッチ20fからは、オンの信号がマイコン68に与えられる。ゲーム装置10の主電源がオフされている状態で、電源スイッチ20fがオンされると、マイコン68のBootROMとしても機能するメモリ68aが起動され、後述するように、ゲーム装置10の開閉状態に応じて電源制御が行なわれる。一方、ゲーム装置10の主電源がオンされている状態で、電源スイッチ20fがオンされると、マイコン68は電源回路70に全回路コンポーネント(マイコン68を除く。)への電力供給の停止を指示する。ここで、電源回路70は、ゲーム装置10が有する電源(典型的には電池であり、下側ハウジング14に収納される)から供給される電力を制御し、ゲーム装置10の各回路コンポーネントに電力を供給する。
【0079】
また、開閉スイッチ42からは、オンまたはオフの信号がマイコン68に与えられる。開閉スイッチ42がオンされている状態(ゲーム装置10本体が開かれている状態)で、ゲーム装置10の主電源がオンされている場合には、マイコン68の制御の下、電源回路70からゲーム装置10の全回路コンポーネントに電力を供給するモード(以下、「通常モード」という)が設定される。通常モードでは、ゲーム装置10は任意のアプリケーションを実行可能であり、ユーザないしプレイヤが使用している状態(使用状態)である。
【0080】
また、ゲーム装置10の主電源がオンされている状態で、開閉スイッチ42がオフされている場合(ゲーム装置10本体が閉じられている状態)には、基本的には、電源回路70からゲーム装置10の一部のコンポーネントに電力を供給するモード(以下、「スリープモード」という)が設定される。ただし、アプリケーションの種類やアプリケーションの実行(進行)状況によっては、スリープモードが設定されないこともある。スリープを実行するか否かは、CPU50によって判断され、スリープを実行することが判断されると、CPU50は、スリープの実行をマイコン68に指示する。ただし、開閉スイッチ42がオフされた場合に、スリープモードを設定することができないことが判断されると、マイコン68の指示に従って、電源回路70から第1LCD16および第2LCD18への電力の供給が停止される。
【0081】
スリープモードでは、ゲーム装置10は任意のアプリケーションを実行不能であり、ユーザないしプレイヤは使用していない状態(不使用状態)である。この実施例では、一部のコンポーネントは、CPU50、無線通信モジュール64およびマイコン68である。ただし、スリープモード(スリープ状態)では、CPU50は、基本的にクロックを停止した状態(不能化された状態)であるため、ほとんど電力を消費しない。また、スリープモードでは、CPU50への電力の供給を停止しても良い。したがって、上述したように、この実施例では、スリープモードにおいては、CPU50によって、アプリケーションが実行されることはない。
【0082】
ただし、スリープ状態において、無線通信モジュール64によって通信を実行する場合には、無線通信モジュール64からの制御信号によってCPU50を起動する。つまり、無線通信モジュール64によってCPU50のクロックが動作され、その後、無線通信モジュール64からCPU50に通信の開始指示が与えられる。以下、同じ。そして、CPU50からマイコン68に指示して、メモリ制御回路54および保存用データメモリ56への電力の供給が開始される。したがって、通信により他のゲーム装置10等に保存用データメモリ56に記憶されたデータを送信したり、他のゲーム装置10等から受信したデータを保存用データメモリ56に記憶したりすることができる。
【0083】
また、スリープ状態において、マイコン68から歩数データ(後述する累積歩数データ152c)を出力する場合には、マイコン68からの制御信号によってCPU50を起動する。つまり、マイコン68によってCPU50のクロックが動作され、歩数データの出力が通知される。また、マイコン68は、電源回路70を制御して、メモリ制御回路54および保存用データメモリ56への電力の供給を開始する。したがって、マイコン68から出力される歩数データが保存用データメモリ56に記憶される。
【0084】
さらに、ゲーム装置10が開かれるなどして、スリープ状態が解除(非スリープ状態)にされると、開閉スイッチ42からオフの信号がマイコン68に入力される。したがって、マイコン68は、CPU50を起動して、CPU50にスリープの解除を指示する。これに応じて、CPU50は、マイコン68にスリープの解除を指示する。つまり、CPU50の指示の下、マイコン68は、電源回路70を制御して、全回路コンポーネントへの電源の供給を開始する。したがって、ゲーム装置10は、通常モードへ移行し、使用状態になる。ただし、スリープモードが設定されていない場合には、ゲーム装置10が開かれたときに、CPU50の指示の下、マイコン68は、電源回路70を制御して、第1LCD16および第2LCD18に電力を供給する。
【0085】
また、上述したように、マイコン68には、加速度センサ88が接続される。たとえば、加速度センサ88は、3軸の加速度センサであり、下側ハウジング14(上側ハウジング12でもよい)の内部に設けられる。ゲーム装置10の第1LCD16(第2LCD18)の面に対して垂直な方向の加速度、および第1LCD16(第2LCD18)の面に対して平行であり、互いに直交する2方向(縦方向および横方向)の加速度を検出する。加速度センサ88は、検出した加速度についての信号(加速度信号)をマイコン68に出力する。マイコン68は、加速度信号に基づいて、ゲーム装置10の向きを検出したり、ゲーム装置10の振動の大きさを検出したりすることができる。したがって、たとえば、マイコン68および加速度センサ88を歩数計として機能させることができる。加速度センサ88を用いた歩数計は既に周知であるため、その詳細な内容については省略するが、加速度の大きさに応じて歩数が測定される。
【0086】
また、ゲーム装置10は、マイク84およびアンプ86を備えている。マイク84およびアンプ86は、それぞれI/F回路72に接続される。マイク84は、ゲーム装置10に向かって発声ないし発生されたユーザの音声ないし音(拍手や手拍子など)を検知して、当該音声ないし音を示す音声信号をI/F回路72に出力する。アンプ86は、I/F回路72から与えられる音声信号を増幅してスピーカ(図示せず)に与える。I/F回路72は、CPU50に接続される。
【0087】
また、タッチパネル22は、I/F回路72に接続される。I/F回路72は、マイク84およびアンプ86(スピーカ)の制御を行う音声制御回路と、タッチパネル22の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル22からの信号に基づいて所定の形式のタッチ位置データを生成してCPU50に出力する。たとえば、タッチ位置データは、タッチパネル22の入力面に対して入力が行われた位置の座標を示すデータである。
【0088】
なお、タッチパネル制御回路は、タッチパネル22からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。CPU50は、I/F回路72を介して、タッチ位置データを取得することにより、タッチパネル22に対して入力が行われた位置を知ることができる。
【0089】
操作ボタン20は、上記の各操作ボタン20a−20k(電源スイッチ20fを除く。以下、同じ。)によって構成され、CPU50に接続される。操作ボタン20からCPU50へは、各操作ボタン20a−20kに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU50は、操作ボタン20からの操作データを取得し、取得した操作データに応じた処理を実行する。
【0090】
内側カメラ32および外側カメラ34は、それぞれCPU50に接続される。内側カメラ32および外側カメラ34は、CPU50の指示に応じて画像を撮像し、撮像した画像に対応する画像データをCPU50に出力する。この実施例では、CPU50は、内側カメラ32および外側カメラ34のいずれか一方に対して撮像指示を行い、撮像指示を受けたカメラ(32,34)が画像を撮像して画像データをCPU50に送る。
【0091】
第1GPU74には、第1VRAM78が接続され、第2GPU76には、第2VRAM80が接続される。第1GPU74は、CPU50からの指示に応じて、メインメモリ52に記憶されている表示画像を生成するためのデータに基づいて第1の表示画像を生成し、第1VRAM78に描画する。第2GPU76は、同様にCPU50からの指示に応じて第2の表示画像を生成し、第2VRAM80に描画する。第1VRAM78および第2VRAM80は、LCDコントローラ82に接続されている。
【0092】
LCDコントローラ82は、レジスタ82aを含む。レジスタ82aは、CPU50からの指示に応じて、「0」または「1」の値を記憶する。LCDコントローラ82は、レジスタ82aの値が「0」である場合には、第1VRAM78に描画された第1の表示画像を第2LCD18に出力し、第2VRAM80に描画された第2の表示画像を第1LCD16に出力する。また、レジスタ82aの値が「1」である場合には、第1VRAM78に描画された第1の表示画像を第1LCD16に出力し、第2VRAM80に描画された第2の表示画像を第2LCD18に出力する。
【0093】
たとえば、このようなゲーム装置10は、不使用状態(または、スリープモードに設定された状態)では、すれ違い通信処理またはいつの間に通信処理を実行する。ここで、すれ違い通信処理について簡単に説明する。スリープモードでは、無線通信モジュール64は、一定時間(たとえば、30ms)をサーチ期間として、サーチ期間内に、他のゲーム装置10に接続要求を示す信号(接続要求信号、ビーコン)を自動的に送信(ブロードキャスト)するとともに、他のゲーム装置10からの接続要求信号の受信を試みる。このサーチ期間が繰り返し設定される。つまり、すれ違い通信処理が間欠的に自動的に実行される。これによって、近距離無線の通信可能範囲内に存在する他のゲーム装置10がサーチ(探索、スキャン)される。ただし、接続要求信号は、その送信元であるゲーム装置10の識別情報を含む。
【0094】
このとき、ゲーム装置10は、接続要求信号を受信すると、これに応答して、接続要求信号の送信元のゲーム装置10に、接続許可信号を送信する。ただし、接続許可信号は、その送信元であるゲーム装置10の識別情報を含む。これによって、2つのゲーム装置10で互いに他の存在を認識して、接続または通信状態を確立する。
【0095】
ただし、接続要求信号に応答して接続許可信号を送信したゲーム装置10では、無線通信モジュール64が、CPU50を起動し、CPU50からの指示に従って、マイコン68の制御の下、電源回路70からメモリ制御回路54および保存用データメモリ56に電力の供給が開始される。また、同様に、接続許可信号を受信したゲーム装置10では、無線通信モジュール64が、CPU50を起動し、CPU50からの指示に従って、マイコン68の制御の下、電源回路70からメモリ制御回路54および保存用データメモリ56に電力の供給が開始される。
【0096】
通信状態を確立すると、2つのゲーム装置10の間で、予め設定(決定)されている、ゲームデータやメッセージデータなどのデータが自動的に送信または受信或いは送受信される。
【0097】
詳細な説明は省略するが、すれ違い通信を終了すると(または、すれ違い通信に係るデータの送受信を終了すると)、各ゲーム装置10は、スリープ状態に戻る。
【0098】
また、詳細な説明は省略するが、すれ違い通信が実行される場合、通信状態を確立した2つのゲーム装置10のうち、接続要求信号を送信したゲーム装置10が親機として機能し、接続要求信号に応答して接続許可信号を送信したゲーム装置10が子機として機能する。
【0099】
したがって、ユーザないしプレイヤは、不使用状態(または、スリープ状態)でゲーム装置10を持ち歩くと、何ら操作することなく、他のゲーム装置10との間で自動的に通信(すれ違い通信)が実行され、当該他のゲーム装置10からゲームデータやメッセージデータなどのデータを得ることができる。
【0100】
次に、いつの間に通信処理について簡単に説明する。いつの間に通信は、所定のアクセスポイントを介して所定のサーバと自動的に接続し、当該サーバとの間で自動的に通信処理を実行するものである。無線通信モジュール64は、すれ違い通信のサーチ期間でない期間をいつの間に通信のサーチ期間とし、当該いつの間に通信のサーチ期間内に、所定のアクセスポイントからのビーコンの受信を試みる。このいつの間にサーチ期間が定期的に繰り返し設定される。つまり、いつの間に通信処理が間欠的に自動的に実行される。これによって、近距離無線の通信可能範囲内に存在する所定のアクセスポイントがサーチされる。ただし、ビーコンは、そのアクセスポイントの識別情報を含む。
【0101】
このとき、ゲーム装置10は、所定のアクセスポイントからのビーコンを受信すると、当該アクセスポイントに自動的に接続し、更に、当該アクセスポイントを介して所定のサーバに自動的に接続する。
【0102】
ただし、ビーコンを受信したゲーム装置10では、無線通信モジュール64が、CPU50を起動し、CPU50からの指示に従って、マイコン68の制御の下、電源回路70からメモリ制御回路54および保存用データメモリ56に電力の供給が開始される。
【0103】
サーバとの接続を確立すると、当該サーバから、たとえば、ゲームデータやメッセージデータなどが送信され、これらのデータが所定のアクセスポイントを介して受信される。
【0104】
詳細な説明は省略するが、いつの間に通信を終了すると(または、いつの間に通信に係るデータの送受信を終了すると)、各ゲーム装置10は、スリープ状態に戻る。
【0105】
したがって、ユーザないしプレイヤは、不使用状態(または、スリープ状態)でゲーム装置10を持ち歩くと、何ら操作することなく、所定のアクセスポイントおよび所定のサーバとの間で自動的に通信(いつの間に通信)が実行され、当該サーバから当該アクセスポイントを介してゲームデータやメッセージデータなどのデータを得ることができる。
【0106】
また、上述したように、スリープモードにおいては、ゲーム装置10は、歩数計としても機能し、上述のように、ユーザないしプレイヤが当該ゲーム装置10を持ち歩いている場合に、当該ユーザないしプレイヤの歩数がカウントされる。カウントされた歩数は、必要に応じて、ゲーム装置10で実行されるアプリケーションプログラムの処理に反映される。
【0107】
たとえば、図3に示した保存用データメモリ56には複数のアプリケーションについてのアプリケーションプログラムを記憶することができる。ゲーム装置10の主電源をオンすると、図4(A)に示すような、アプリケーションの選択等を行うためのメインメニュー画面200が第2LCD18(第1LCD16でも可)に表示される。
【0108】
なお、詳細な説は省略するが、各アプリケーションの処理を終了した場合にも、メインメニュー画面200が表示される。
【0109】
図4(A)に示すように、メインメニュー画面200には、アプリケーションを選択するための複数のボタン画像202、204、…が設けられ、その下部に、各種設定やオプションを選択するためのボタン画像210、212が設けられる。ユーザないしプレイヤは、ボタン画像202、204、…をオンすることによって、所望のアプリケーションを選択することができる。
【0110】
たとえば、ボタン画像202がオンされると、第1アプリケーションが選択される。第1アプリケーションのプログラム(第1アプリケーションプログラム)に従うゲーム中に、アイテムを購入する場面においては、図4(B)に示すような画面(アイテム購入画面)300が第2LCD18(第1LCD16でも可)に表示される。
【0111】
このアイテム購入画面300では、ボタン画像302、304、306、308、310、312が表示される。たとえば、ボタン画像302−308は、プレイヤ(ユーザ)ないしプレイヤキャラクタがゲーム内で取得するコイン(以下、「通常コイン」という)を用いて購入することができるアイテム(通常アイテム:第1−第4アイテム)を選択するために設けられる。また、ボタン画像310およびボタン画像312は、計測した歩数に応じて獲得したコイン(以下、「獲得コイン」という)を用いて購入することができるアイテム(特殊アイテムA、B)を選択するために設けられる。
【0112】
ただし、通常コインは、ゲーム空間内に配置されたり、ゲーム内での労働やトレーニングの報酬として与えられたり、対戦ゲームなどで勝利したことに応じて与えられたりするようなコインであり、上述したように、プレイヤないしプレイヤキャラクタがゲーム内で取得する。また、獲得コインは、プレイヤがゲーム装置10を持ち歩くことにより計測した歩数を換算したコインであり、ゲーム内で取得することはできない。
【0113】
詳細な説明は省略するが、第1−第4アイテムを購入するために必要な通常コインの数や特殊アイテムA、Bを購入するために必要な獲得コインの数が予め決定されている。当然のことながら、プレイヤ(ユーザ)ないしプレイヤキャラクタが、必要な通常コインの数や必要な獲得コインの数以上の通常コインや獲得コインを有していない場合には、第1−第4アイテムまたは特殊アイテムA、Bを購入することができない。
【0114】
つまり、通常アイテムを購入して、それを使用することによりゲームを進行させることができるし、特殊アイテムを購入して、それを使用することによりゲームを進行させることもできる。また、たとえば、購入した特殊アイテム(購入特殊アイテム)が道具である場合には、プレイヤキャラクタがその道具を用いることができる。たとえば、購入アイテムを使用することにより、プレイヤキャラクタ102の能力を変化させて、ゲームの進行を補助するようにしてもよい。かかる場合には、たとえば、プレイヤキャラクタ102の残機数が増加されたり、体力が回復したり、一定時間攻撃力が上がったり、一定時間無敵になったり、味方が増えたりする。また、攻撃回数に制限がある場合には、攻撃回数が増加される。
【0115】
また、図4(A)に示すメインメニュー画面200で、ボタン画像204がオンされると、第2アプリケーションが選択される。たとえば、第2アプリケーションのプログラム(第2アプリケーションプログラム)に従うゲームの開始(再開)時に、コースを選択する場面においては、図4(C)に示すような画面(コース選択画面)400が第2LCD18(第1LCD16でも可)に表示される。
【0116】
このコース選択画面400では、ボタン画像402、404、406、408、410、412が表示される。たとえば、ボタン画像402−408は、獲得コインを使用せずに選択することができるコース(通常コース:第1−第4コース)を選択するために設けられる。また、ボタン画像410およびボタン画像412は、獲得コインを用いてプレイすることができるコース(特別コースA、B)を選択するために設けられる。
【0117】
詳細な説明は省略するが、特別コースA、Bでプレイするために必要な獲得コインの数は予め決定されている。当然のことながら、プレイヤ(ユーザ)ないしプレイヤキャラクタが必要な獲得コインの数以上の獲得コインを有していない場合には、特別コースA、Bでプレイすることができない。
【0118】
ただし、特別コースA、Bは、一度、獲得コインを使用してプレイすることができる状態にされた場合には、制限無くプレイできるようにしてもよいし、プレイ可能な回数や期間を設定しておいてもよい。
【0119】
このように、通常コースを選択して、通常コースでプレイすることができるし、特別コースA、Bを選択して、特別コースA、Bでプレイすることもできる。たとえば、特別コースA、Bは、ゲームについてのテクニックを特訓するためのコースや通常コースよりも難易度の高いコースである。つまり、特別コースA、Bは、プレイヤが歩くことによりプレイすることができる補助的なコースである。
【0120】
このように、歩数を換算した獲得コインを、異なる複数のアプリケーションプログラムの処理で共通に使用することができる。ここでは、簡単のため、2つのアプリケーションプログラムの処理で獲得コインが使用される場合について説明したが、異なる3つ以上のアプリケーションプログラムの処理で獲得コインを使用することも可能である。ただし、アプリケーションプログラムは、保存用データメモリ56に記憶(インストール)されている必要は無く、ゲーム装置10に装着したメモリカード26、28から読み込むようにしてもよいし、外部の機器からダウンロードするようにしてもよい。
【0121】
図5は、図3に示した保存用データメモリ56のメモリマップの例を示す図解図である。図5に示すように、保存用データメモリ56は、プログラム記憶領域90とデータ記憶領域100とを含む。プログラム記憶領域90には、本体処理プログラム92、第1アプリケーションプログラム94、第2アプリケーションプログラム96、…が記憶される。
【0122】
本体処理プログラム92は、メインメニュー画面表示プログラム92a、歩数取得プログラム92bおよびコイン獲得プログラム92cなどによって構成される。
【0123】
メインメニュー画面表示プログラム92aは、ゲーム装置10の主電源がオンされた場合やアプリケーションの処理を終了した場合に、図4(A)に示したような、メインメニュー画面200を表示するためのプログラムである。
【0124】
歩数取得プログラム92bは、マイコン68から送信される歩数についてのデータ(歩数データ)を受信し、データ記憶領域100に記憶するためのプログラムである。
【0125】
コイン獲得プログラム92cは、歩数データ(1020、1022、…、102m)が示す歩数を獲得コインに変換するためのプログラムである。この実施例では、歩数に相関する値(相関値)として獲得コインに変換するようにしてあるが、これに限定される必要は無く、他のアイテムやパラメータに変換してもよい。
【0126】
図示は省略するが、本体処理プログラム92には、音出力プログラムなども記憶される。音出力プログラムは、音(効果音)や音楽(BGM)を出力するためのプログラムである。
【0127】
第1アプリケーションプログラム94は、画像表示プログラム94a、アイテム選択プログラム94b、獲得総数取得プログラム94cおよびアイテム購入プログラム94dなどによって構成される。
【0128】
画像表示プログラム94aは、ゲーム画像(ゲーム画面)を第1LCD16および第2LCD18に表示するためのプログラムである。具体的には、画像表示プログラム94aを実行することにより、図示しない画像データ(ポリゴンデータ、テクスチャデータなど)を用いて、ゲーム画像を生成し、第1LCD16および第2LCD18に出力する。以下、同様である。
【0129】
アイテム選択プログラム94bは、ユーザないしプレイヤの指示に従ってアイテムが選択されたかどうかを判断するためのプログラムである。具体的には、図4(B)に示したアイテム選択画面300において、ボタン画像302−312がオンされたかどうかを判断するのである。
【0130】
獲得総数取得プログラム94cは、獲得コインの総数(以下、「総獲得コイン数」という)を取得するためのプログラムである。具体的には、後述する共用データ記憶領域102に記憶されるコイン獲得数データ102bに含まれる獲得総数データ1028を読み出す。
【0131】
アイテム購入プログラム94dは、通常コインまたは獲得コインを用いて、通常アイテム(第1−第4アイテム)または特殊アイテム(特殊アイテムA、B)を購入するためのプログラムである。
【0132】
図示は省略するが、第1アプリケーションプログラムには、メイン処理プログラム、音出力プログラム、バックアッププログラムおよび種々の処理プログラムなども含まれる。メイン処理プログラムは、第1アプリケーションのメインルーチンを処理するためのプログラムである。音出力プログラムは、第1アプリケーションプログラムの実行に伴う音(効果音)や音楽(BGM)を出力するためのプログラムである。また、バックアッププログラムは、ユーザないしプレイヤの指示に従って、または所定のイベントに従って、メインメモリ52に記憶されたゲームデータ(途中データ、終了データ)を保存用データメモリ56の第1アプリケーション用記憶領域104(図6参照)やメモリカード26、28に保存(セーブ)するためのプログラムである。種々の処理プログラムは、プレイヤの操作に従ってプレイヤキャラクタを移動または動作させたり、ノンプレイヤキャラクタ(たとえば、敵キャラクタ)を移動または動作させたり、スコアを算出したり、ゲームクリアやゲームオーバを判定したり、ゲームイベントに従う処理を実行したり、ゲーム画面の表示(更新)処理を実行するためのプログラムである。これらは、第2アプリケーションプログラムを含む他のアプリケーションプログラムについても同様である。
【0133】
また、第2アプリケーションプログラム96は、画像表示プログラム96a、コース選択プログラム96b、獲得総数取得プログラム96cおよび許可フラグ設定プログラム96dなどによって構成される。
【0134】
画像表示プログラム96aおよび獲得総数取得プログラム96cは、上述した画像表示プログラム94aおよび獲得総数取得プログラム94cと同様であるため、重複した説明は省略する。
【0135】
コース選択プログラム96bは、ゲームの開始(再開)時に、図4(C)に示したようなコース選択画面400において、ボタン画像402−412がオンされたかどうかを判断するためのプログラムである。
【0136】
許可フラグ設定プログラム96dは、特別コース(特別コースA、B)でプレイすることを許可するかどうかのフラグ(許可フラグ)を設定するためのプログラムである。
【0137】
図示は省略するが、第2アプリケーションプログラム96には、メイン処理プログラム、音出力プログラム、バックアッププログラムおよび種々の処理プログラムなども含まれる。
【0138】
また、図5では省略するが、プログラム記憶領域90には、他のアプリケーションプログラムも記憶される。
【0139】
図6に示すように、保存用データメモリ56のデータ記憶領域100は、共用データ記憶領域102、第1アプリケーション用記憶領域104および第2アプリケーション用記憶領域106などを含む。
【0140】
共用データ記憶領域102は、実行中のアプリケーションの種類に拘わらず、アクセス可能な領域である。すなわち、いずれのアプリケーションを実行している場合でも、データの読出し・書込みが可能な領域である。この共用データ記憶領域102には、累積歩数データ102a、コイン獲得数データ102b、前回歩数累計データ102c、現在歩数累計データ102d、前回日データ102eおよび前回日歩数データ102fなどが記憶される。累積歩数データ102aは、第1歩数データ1020、第2歩数データ1022、…、第m歩数データ102mを含む。歩数データ1020−102mは、マイコン68で単位時間毎に取得した歩数についてのデータであり、歩数を取得した時間(日付および時刻(時分秒))の情報を含む。ただし、歩数データ(1020、1022、…、102m)は、ゲーム装置10の第2LCD18(または第1LCD16)にメインメニュー画面200が表示された場合に、マイコン68から取得され、データ記憶領域100に記憶される。
【0141】
コイン獲得数データ102bは、獲得総数データ1028および前回獲得数データ1030を含む。獲得総数データ1028は、総獲得コイン数についての数値データである。前回獲得数データ1030は、前回歩数を獲得コインに変換したときの当該獲得コインの数についての数値データである。
【0142】
前回歩数累計データ102cは、前回歩数を獲得コインに変換したときまでの歩数の累計についての数値データである。現在歩数累計データ102dは、現在までの歩数の累計についての数値データである。前回日データ102eは、前回歩数をコインに変換(コイン化)した日(年月日)についてのデータである。前回日歩数データ102fは、前回コイン化した日(年月日)の歩数のうち、コイン化したときまでの歩数についての数値データである。
【0143】
また、第1アプリケーション用記憶領域104は、第1アプリケーションプログラム94を実行している場合にのみアクセス可能な領域である。この第1アプリケーション用記憶領域104には、アイテムデータ104aおよび総通常コイン数データ104bが記憶される。
【0144】
図示は省略するが、アイテムデータ104aは、アイテム(通常アイテム、特殊アイテム)を取得(所持)しているか否かを示すデータであり、各アイテムに対応してフラグが設定されている。以下、単に「アイテム」という場合には、通常アイテムおよび特殊アイテムの両方を意味する。プレイヤ(ユーザ)ないしプレイヤキャラクタがアイテムを有(所持)している場合には、当該アイテムに対応するフラグがオンされる。一方、プレイヤ(ユーザ)ないしプレイヤキャラクタがアイテムを有(所持)していない場合には、当該アイテムに対応するフラグがオフされる。また、総通常コイン数データ104bは、ゲーム内でプレイヤないしプレイヤキャラクタが所持(所有)している通常コインの総数を示す数値データである。この総通常コイン数データ104bが示す通常コインの総数は、ゲーム内でプレイヤないしプレイヤキャラクタが取得することにより増加され、ゲーム内でプレイヤないしプレイヤキャラクタが使用することにより減少される。
【0145】
なお、簡単のため、アイテムデータ104aおよび総通常コイン数データ104bの2つのデータだけを記載してあるが、実際には、アイテムデータ104aおよび総通常コイン数データ104bを含むゲームデータが記憶される。
【0146】
さらに、第2アプリケーション用記憶領域106は、第2アプリケーションプログラム96を実行している場合にのみアクセス可能な領域である。この第2アプリケーション用記憶領域106には、コース許可データ106aが記憶される。図示は省略するが、コース許可データ106aは、特別コースA、Bでプレイすることが許可されているかどうかの許可フラグについてのデータである。特別コースA、Bでプレイすることが許可されている場合には、当該特別コースA、Bに対応するフラグがオンされる。一方、特別コースA、Bでプレイすることが許可されていない場合には、当該特別コースA、Bに対応するフラグがオフされる。
【0147】
なお、簡単のため、コース許可データ106aのみを記載してあるが、実際には、コース許可データ106aを含むゲームデータが記憶される。
【0148】
また、データ記憶領域100には、他のアプリケーション用記憶領域も設けられる。
【0149】
さらに、詳細な説明は省略するが、CPU50によって実行される、本体プログラム92やアプリケーションプログラム(94、96、…)は、メインメモリ52に読み出される(ロードされる)。また、本体プログラム92やアプリケーションプログラム(94、96、…)の実行中に、生成ないし発生するデータはメインメモリ52に保存され、必要に応じて、保存用データメモリ56に記憶(保存)される。
【0150】
図7は、マイコン68に設けられるメモリ68aのメモリマップである。メモリ68aは、プログラム記憶領域150およびデータ記憶領域152を含む。プログラム記憶領域150には、歩数カウントプログラム150aおよび電力制御プログラム150bなどのプログラムが記憶される。
【0151】
歩数カウントプログラム150aは、歩数をカウントするプログラムである。この実施例では、歩数カウントプログラム150aは、加速度センサ88からの加速度データが示す加速度(3軸の加速度)の変化量に基づいて歩数をカウントするためのプログラムである。電力制御プログラム150bは、開閉スイッチ42からのオンまたはオフの信号に応じて、通常モード(非スリープ状態)またはスリープモード(スリープ状態)をCPU50に指示し、CPU50からの指示の下、電源回路70から各回路コンポーネントへの電力供給を制御するためのプログラムである。これによって、ゲーム装置10の使用状態と不使用状態とが切り替えられる。
【0152】
なお、図示は省略するが、プログラム記憶領域150bには、他のプログラムも記憶される。
【0153】
データ記憶領域152には、タイマ152aおよび歩数カウンタ152bが設けられる。タイマ152aは、歩数のカウントの開始からの時間をカウントするためのタイマである。歩数カウンタ152bは、歩数をカウントするためのアップカウンタである。
【0154】
また、データ記憶領域152には、累積歩数データ152cが記憶される。累積歩数データ152cは、第1歩数データ1520、第2歩数データ1522、…、第n歩数データ152nを含む。ここで、各歩数データ(1520、1522、…、152n)は、第1単位時間(この実施例では、1時間)毎の歩数についてのデータである。たとえば、第1歩数データ1520、第2歩数データ1522、…、第n歩数データ152nの順で記憶される。また、メモリ68aは、比較的容量が少ないため、スリープモードでは、第2単位時間(この実施例では、3時間)毎にデータ記憶領域152に記憶された累積歩数データ152cは、CPU50に出力され、メモリ制御回路54を介して、保存用データメモリ56に移動(保存)される。より具体的に説明すると、マイコン68は、CPU50のクロックを動作させるとともに、電源回路70を制御して、メモリ制御回路54および保存用データメモリ56への電源供給を開始した後、累積歩数データ152cをCPU50に出力する。そして、CPU50が、メモリ制御回路54を介して保存用データメモリ56に累積歩数データ152cを記憶する。その後、マイコン68は、CPU50のクロックを停止させ、電源回路70を制御して、メモリ制御回路54および保存用データメモリ56への電力供給を停止させる。
【0155】
図8および図9は、図3に示したCPU50の全体処理である。ゲーム装置10の主電源がオンされると、図8に示すように、CPU50は全体処理を開始し、ステップS1で、図4(A)に示したようなメインメニュー画面200を表示する。続くステップS3では、後述するコイン獲得処理(図10−図12参照)を実行する。そして、ステップS5では、第1アプリケーションが選択されたかどうかを判断する。つまり、メインメニュー画面200で、第1アプリケーションを示すボタン画像202がオンされたかどうかを判断するのである。
【0156】
ステップS5で“YES”であれば、つまり第1アプリケーションが選択されれば、ステップS7で、後述する第1アプリケーション実行処理(図15および図16参照)を実行して、ステップS13に進む。一方、ステップS5で“NO”であれば、つまり第1アプリケーションが選択されていなければ、ステップS9で、第2アプリケーションが選択されたかどうかを判断する。つまり、メインメニュー画面200で、第2アプリケーションを示すボタン画像204がオンされたかどうかを判断するのである。
【0157】
ステップS9で“YES”であれば、つまり第2アプリケーションが選択されれば、ステップS11で、後述する第2アプリケーション実行処理(図17参照)を実行して、ステップS13に進む。一方、ステップS9で“NO”であれば、つまり第2アプリケーションの実行が選択されなければ、そのままステップS13に進む。
【0158】
なお、この実施例では、ステップS9で“NO”の場合、そのままステップS13に進むようにしてあるが、さらに他のアプリケーションが選択可能である場合には、当該他のアプリケーションの実行が選択されたか否かが判断される。
【0159】
また、この実施例では、2つのアプリケーションから1つのアプリケーションを選択可能な場合について示してあるが、1つのアプリケーションのみしか選択できない場合もある。
【0160】
つまり、メモリカード26、28および保存用データメモリ58に記憶されているアプリケーションプログラムの数およびダウンロードしたアプリケーションプログラムの数に応じて、選択可能なアプリケーションの数は可変的に設定されるのである。
【0161】
図8に戻って、ステップS13では、スリープの指示が有るかどうかを判断する。つまり、CPU50は、マイコン68からスリープの指示があるかどうかを判断する。ただし、マイコン68は、開閉スイッチ42がオフされた場合に、スリープをCPU50に指示する。
【0162】
ステップS13で“NO”であれば、つまりスリープの指示が無ければ、ステップS15で、いずれかのアプリケーションを実行中であるかどうかを判断する。ステップS15で“NO”であれば、つまりいずれのアプリケーションも実行中で無ければ、そのままステップS1に戻る。
【0163】
一方、ステップS15で“YES”であれば、つまりいずれかのアプリケーションを実行中であれば、ステップS17で、実行中のアプリケーションを継続する。続いて、ステップS19で、アプリケーションの終了かどうかを判断する。ステップS19では、CPU50は、ユーザないしプレイヤによって、アプリケーションの終了指示があるかどうかを判断する。
【0164】
ステップS19で“NO”であれば、つまりアプリケーションの終了でなければ、そのままステップS17に戻る。一方、ステップS19で“YES”であれば、つまりアプリケーションの終了であれば、図示は省略するが、アプリケーションの実行を終了して、ステップS1に戻る。
【0165】
また、ステップS13で“YES”であれば、つまりスリープの指示が有れば、ステップS21で、マイコン68に歩数のカウント開始を指示する。次のステップS23では、マイコン68にスリープの実行を指示する。したがって、マイコン68は、CPU50のクロックを停止し、電源回路70を制御して、無線通信モジュール64以外の回路コンポーネントへの電力供給を停止する。ただし、CPU50は、アプリケーションの実行中である場合には、メインメモリ52のゲームデータを当該アプリケーション用記憶領域(104、106、…)に記憶した後に、アプリケーションを中断する。
【0166】
なお、上述したように、CPU50およびマイコン68には常に電力が供給されている。
【0167】
続いて、ステップS25では、すれ違い通信処理またはいつの間に通信処理を実行する。ただし、スリープ中では、CPU50のクロックは停止されているため、無線通信モジュール64が他のゲーム装置10やアクセスポイントからの接続要求信号や接続許可信号を受信すると、無線通信モジュール64がCPU50を起動し、CPU50はすれ違い通信処理またはいつの間に通信処理を実行する。このとき、CPU50の指示の下、マイコン68は電源回路70を制御して、メモリ制御回路54および保存用データメモリ56への電力の供給を開始する。
【0168】
次のステップS27では、スリープ解除の指示があるかどうかを判断する。つまり、CPU50は、マイコン68によってクロックが動作されたかどうかを判断する。ステップS27で“NO”であれば、つまりスリープ解除の指示が無ければ、そのままステップS25に戻る。
【0169】
なお、ステップS25およびS27の処理がCPU50によって実行されているように記載してあるが、実際には、スリープ中では、CPU50は何ら処理を実行しない。無線通信モジュール64やマイコン68によってCPU50が起動された場合に、すれ違い通信やいつの間に通信や通常の処理(ゲーム処理など)を実行するのである。
【0170】
また、ステップS27で“YES”であれば、つまりスリープ解除の指示があれば、図9に示すステップS29で、マイコン68にスリープの解除を指示する。続くステップS31では、マイコン68に歩数のカウント終了を指示する。そして、ステップS33で、マイコン68のメモリ68aから歩数値を読み出し、ステップS35で、単位時間毎に日時が付加された歩数値を保存する。
【0171】
つまり、CPU50は、ステップS33で、マイコン68のメモリ68aから累積歩数データ152c(第1−第n歩数データ1520−152n)を読み出し、ステップS35で、保存用データメモリ56のデータ記憶領域100に書き込む。このとき、CPU50は、現在歩数累計データ102dのコピーを前回歩数累計データ102cに書き込み(上書きし)、その後、今回読み出した歩数の合計値を現在歩数累計データ102d(または前回歩数累計データ102c)が示す現在歩数累計(前回歩数累計)に加算して得た歩数の合計値についての数値データを、現在歩数累計データ102dとして記憶(上書き)する。ただし、現在歩数累計データ102dは、累積歩数データ102aが示す歩数の合計値、すなわち第1歩数データ1020、第2歩数データ1022、…、第m歩数データ102mが示す歩数の合計値についての数値データであってもよい。
【0172】
図9に戻って、ステップS37では、いずれかのアプリケーションを実行中であるかどうかを判断する。ここでは、CPU50は、アプリケーションを実行しているときに、スリープが実行され、アプリケーションの実行が中断されていたかどうかを判断するのである。ステップS37で“NO”であれば、つまりいずれのアプリケーションも実行中で無ければ、図8に示したステップS1に戻る。
【0173】
一方、ステップS37で“YES”であれば、つまりいずれかのアプリケーションを実行中であれば、ステップS39で、実行中のアプリケーションに復帰(再開)する。このとき、CPU50は、スリープ前に、アプリケーション用記憶領域(104、106、…)に記憶したゲームデータを読み出して、メインメモリ52に書き込む(ロードする)。続いて、ステップS41で、アプリケーションの実行を継続し、そして、ステップS43で、アプリケーションの終了かどうかを判断する。
【0174】
ステップS43で“NO”であれば、つまりアプリケーションの終了でなければ、そのままステップS41に戻る。一方、ステップS43で“YES”であれば、つまりアプリケーションの終了であれば、図示は省略するが、アプリケーションの実行を終了して、ステップS1に戻る。
【0175】
図10は、図8のステップS3に示したコイン獲得処理のフロー図である。図10に示すように、CPU50は、コイン獲得処理を開始すると、ステップS51で、現在の総獲得コイン数が3000以上であるかどうかを判断する。ただし、上述したように、総獲得コイン数は、獲得総数データ1028が示す獲得コインの総数である。つまり、CPU50は、保存用データメモリ56のデータ記憶領域100に記憶された獲得総数データ1028を参照して、総獲得コイン数が3000以上かどうか(上限であるかどうか)を判断する。
【0176】
ステップS51で“YES”であれば、つまり現在の総獲得コイン数が3000以上であれば、上限に達していると判断して、そのまま全体処理にリターンする。一方、ステップS51で“NO”であれば、つまり現在の総獲得コイン数が3000未満であれば、ステップS53で、現在歩数累計−前回歩数累計が10以上であるかどうかを判断する。ここでは、CPU50は、今回の獲得コインに変換することができる最低の歩数だけ、ユーザないしプレイヤが歩いたかどうかを判断しているのである。つまり、この実施例では、10歩につき、1枚の獲得コインに変換される。ただし、CPU50は、保存データメモリ58のデータ記憶領域100に記憶される、現在歩数累計データ102dが示す現在歩数累計から前回歩数累計データ102cが示す前回歩数累計を減算して、ステップS53の判断処理を実行する。また、歩数を獲得コインに変換する割合は単なる例示であり、これに限定される必要はない。
【0177】
ステップS53で“NO”であれば、つまり現在歩数累計−前回歩数累計が10未満であれば、そのまま全体処理にリターンする。一方、ステップS53で“YES”であれば、つまり現在歩数累計−前回歩数累計が10以上であれば、ステップS55で、変数currentに、前回コイン化した日を代入する。ただし、前回コイン化した日は、前回歩数を獲得コインに変換した日を意味する。
【0178】
続くステップS57では、変数currentの示す日が現在日(今日)であるかどうかを判断する。ステップS57で“YES”であれば、つまり変数currentの示す日が現在日であれば、ステップS59で、変数currentの示す日が前回コイン化した日であるかどうかを判断する。ここでは、CPU50は、前回日データ102eの示す日が変数currentの示す日と一致するかどうかを判断するのである。
【0179】
ステップS59で“NO”であれば、つまり変数currentの示す日が前回コイン化した日でない場合には、前回コイン化した日が現在日と同一日ではないので、ステップS61で、(現在歩数累計−前日までの歩数累計)/10を今回の獲得コイン数として算出して、図11に示すステップS65に進む。ただし、歩数に余りが出る場合には、獲得コインを1加算する。または、歩数に余りが出る場合には、歩数を切り捨てるようにしてもよい。以下、同様である。一方、ステップS59で“YES”であれば、つまり変数currentの示す日が前回コイン化した日である場合には、現在日と同一日に前回コイン化しているので、(現在歩数累計−前回歩数累計)/10を今回の獲得コイン数として算出して、図12に示すステップS83に進む。
【0180】
図11に示すステップS65では、今回の獲得コイン数が100以上であるかどうかを判断する。ステップS65で、“YES”であれば、ステップS67で、今回の獲得コイン数を100に設定(補正)して、総獲得コイン数に加算して、ステップS71に進む。このように、ステップS67の処理を実行することにより、1日に変換できる最大の獲得コインの数を制限している。1日に変換できる獲得コイン数を無制限に認めると、歩く量の異なるユーザないしプレイヤ間で、ゲーム処理に大きな差が出てしまうからである。また、1日に変換できる獲得コイン数を制限することで、継続的に適量の歩行をユーザないしプレイヤに促すことができるからでもある。以下、獲得コイン数を制限する場合について同様である。ただし、1日に変換できる獲得コイン数を無制限に認めるようにしてもよい。一方、ステップS65で“NO”であれば、つまり今回の獲得コイン数が100未満であれば、ステップS69で、現在の総獲得コイン数に今回の獲得コイン数を加算して、ステップS71に進む。
【0181】
また、図12に示すように、ステップS83では、前回の獲得コイン数と、今回の獲得コイン数との和が100以上であるかどうかを判断する。ただし、前回の獲得コイン数は、前回獲得数データ1030が示す獲得コインの数である。ステップS83で“YES”であれば、つまり前回の獲得コイン数と、今回の獲得コイン数との和が100以上であれば、ステップS85で、現在の総獲得コイン数から前回の獲得コイン数を減算した後に、100加算して、図11に示したステップS71に進む。つまり、1日に獲得できる最大の獲得コインの数が制限される。一方、ステップS83で“NO”であれば、つまり前回の獲得コイン数と、今回の獲得コイン数との和が100未満であれば、ステップS87で、現在の総獲得コイン数に、今回の獲得コイン数を加算して、ステップS71に進む。
【0182】
図11に戻って、ステップS71では、前回歩数累計に現在歩数累計を設定し、ステップS73で、前回日歩数に現在日歩数を設定する。さらに、ステップS75で、前回日に現在日を設定し、ステップS77で、前回の獲得コイン数に、今回の獲得コイン数を設定する。ただし、現在日歩数は、累積歩数データ102aのうち、今日の日付が付された第m歩数データ102mが示す歩数の合計値である。現在日は、RTC68bによって計時された時間に基づいて計算される今日の日付である。
【0183】
ここで、この実施例では、簡単のため、ステップS77では、前回の獲得コイン数に、今回の獲得コイン数を設定するようにしてあるが、厳密には、ステップS59で“YES”と判断された場合と、ステップS59で“NO”と判断された場合とで処理が異なる。具体的には、ステップS59で“NO”と判断された場合には、ステップS77の処理はそのままで良いが、ステップS59で“YES”と判断された場合には、ステップS77では、前回の獲得コイン数に、前回の獲得コイン数と今回の獲得コイン数との和が設定される。
【0184】
このようにするのは、1日に3回以上、歩数を獲得コインに変換した場合に、後述するステップS83で、直近の2回分の獲得コインの和が100を超えるかどうかを判断することになってしまい、不都合が生じるからである。
【0185】
そして、ステップS79で、現在の総獲得コイン数が3000以上であるかどうかを判断する。ステップS79で“NO”であれば、そのまま全体処理にリターンする。一方、ステップS79で“YES”であれば、ステップS81で、総獲得コイン数を3000に設定して、全体処理にリターンする。つまり、ステップS81の処理を実行することにより、総獲得コイン数に制限を設けてある。このように、総獲得コイン数に制限を設けるのは、ゲーム装置10を頻繁に持ち歩くユーザないしプレイヤと、ゲーム装置10を頻繁に持ち歩かないユーザないしプレイヤとの間で、ゲーム内容に著しく大きな差異を生じないようにするためである。つまり、ユーザないしプレイヤ間の不公平を低減するためである。
【0186】
また、図10に示したように、ステップS57で“NO”である場合には、図13に示すステップS89で、変数currentの示す日が前回日であるかどうかを判断する。ステップS89で“NO”であれば、つまり変数currentの示す日が前回日でなければ、変数currentの示す日の全歩数が未だコイン化されていないので、ステップS91で、変数currentの示す日の歩数/10を今回の獲得コイン数として算出して、ステップS95に進む。一方、ステップS89で“YES”であれば、つまり変数currentの示す日が前回日であれば、変数currentの示す日の全歩数のうち、一部(前回日歩数)がコイン化され残りがコイン化されていないので、ステップS93で、(変数currentの示す日の歩数−前回日歩数)/10を今回の獲得コイン数として算出して、図14に示すステップS105に進む。
【0187】
ステップS95では、今回の獲得コイン数が100以上であるかどうかを判断する。ステップS95で、“YES”であれば、ステップS97で、今回の獲得コイン数を100に設定して、総獲得コイン数に加算して、ステップS101に進む。一方、ステップS95で“NO”であれば、ステップS99で、現在の総獲得コイン数に今回の獲得コイン数を加算して、ステップS101に進む。
【0188】
また、図14に示すように、ステップS105では、前回の獲得コイン数と今回の獲得コイン数との和が100以上であるかどうかを判断する。ステップS105で“YES”であれば、ステップS107で、現在の総獲得コイン数から前回の獲得コイン数を減算して、100加算し、図13に示したステップS101に進む。一方、ステップS103で“NO”であれば、ステップS109で、現在の総獲得コイン数に、今回の獲得コイン数を加算して、ステップS101に進む。
【0189】
ステップS101では、前回の獲得コイン数に今回の獲得コイン数を設定する。そして、ステップS103で、変数currentに1加算して、図10に示したステップS57に戻る。
【0190】
つまり、ステップS57、S89−109の処理を繰り返すことによって、前回コイン化した日から現在日(今日)の前日までの歩数が日単位でそれぞれ獲得コインに変換される。
【0191】
図15および図16は、図8のステップS7に示した第1アプリケーション実行処理のフロー図である。図15に示すように、CPU50は、第1アプリケーション実行処理を開始すると、ステップS111で、特殊アイテムの購入が選択されたかどうかを判断する。ここでは、CPU50は、図4(B)に示したアイテム購入画面300において、ユーザないしプレイヤによって、ボタン画像310、312がオンされたかどうかを判断するのである。
【0192】
ステップS111で“NO”であれば、つまり特殊アイテムの購入が選択されなければ、図16に示すステップS129に進む。一方、ステップS111で“YES”であれば、つまり特殊アイテムの購入が選択されれば、ステップS113で、特殊アイテム(この実施例では、特殊アイテムA、B)の購入に必要な獲得コインの数NAを取得する。ただし、特殊アイテムA、Bの購入に必要な獲得コインの数NAは予め決定されている。
【0193】
続くステップS115では、獲得総数データ1028が示す現在の総獲得コイン数Tを読み出す。次のステップS117では、総獲得コイン数T≧獲得コインの数NAであるかどうかを判断する。ステップS117で“NO”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NAに満たない場合には、ステップS119で、選択された特殊アイテムを購入できない旨のメッセージを表示して、ステップS127に進む。
【0194】
一方、ステップS117で“YES”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NA以上である場合には、ステップS121で、総獲得コイン数Tに、T−NAを設定して、ステップS123で、選択された特殊アイテムを購入特殊アイテム(所持特殊アイテム)として第1アプリケーション用記憶領域104に記憶する。つまり、選択された特殊アイテムについてのフラグがオンされることによって、アイテムデータ104aが更新される。次のステップS125では、第1アプリケーション用記憶領域104に記憶された購入特殊アイテムを用いた処理を実行し、ステップS127に進む。
【0195】
なお、この実施例では、特殊アイテムを購入した場合に、直ぐにその特殊アイテム(購入特殊アイテム)を用いた処理を実行するようにしてあるが、これは単なる一例であり、ユーザないしプレイヤの指示があったときに、購入特殊アイテムを用いた処理を実行するようにしてもよい。このことは、後述する通常アイテムを購入した場合についても同様である。
【0196】
また、購入特殊アイテムを用いた処理とは、たとえば、購入特殊アイテムが道具である場合には、プレイヤキャラクタがその道具を用いた動作を行う処理が該当する。また、たとえば、購入特殊アイテムを用いることによって、プレイヤキャラクタが一定時間無敵の状態にされる処理が該当する。これらは単なる例示であり、限定されるべきでない。
【0197】
図15に戻って、ステップS127では、その他の処理を実行して、全体処理にリターンする。ステップS127では、CPU50は、プレイヤの指示に従って、プレイヤキャラクタに任意のアクションをさせたり、プレイヤキャラクタを移動させたりする。また、コンピュータ(CPU50)の制御に従って、プレイヤの操作によらないで移動等するノンプレイヤキャラクタに任意のアクションをさせたり、ノンプレイヤキャラクタを移動させたりする。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。
【0198】
図16に示すように、ステップS129では、通常アイテムの購入が選択されたかどうかを判断する。ここでは、CPU50は、図4(B)に示したアイテム購入画面300において、ユーザないしプレイヤによって、ボタン画像302−308のいずれかがオンされたかどうかを判断するのである。ステップS129で“NO”であれば、つまり通常アイテムの購入でなければ、そのまま図15に示したステップS127に進む。一方、ステップS129で“YES”であれば、つまり通常アイテムの購入であれば、ステップS131で、通常アイテム(この実施例では、第1−第4アイテム)の購入に必要な通常コインの数NZを取得する。ただし、第1−第4アイテムの購入に必要な通常コインの数NZは予め決定されている。
【0199】
続くステップS133では、総通常コイン数データ104bが示す現在の総通常コイン数Wを読み出す。次のステップS135では、総通常コイン数W≧獲得コインの数NZであるかどうかを判断する。ステップS135で“NO”であれば、つまり総通常コイン数Wが必要な獲得コインの数NZに満たない場合には、ステップS137で、選択された通常アイテムを購入できない旨のメッセージを表示して、ステップS127に進む。
【0200】
一方、ステップS135で“YES”であれば、つまり総通常コイン数Wが必要な獲得コインの数NZ以上である場合には、ステップS139で、総通常コイン数Wに、W−NZを設定して、ステップS141で、選択された通常アイテムを購入通常アイテム(所持通常アイテム)として第1アプリケーション用記憶領域104に記憶する。つまり、選択された通常アイテムについてのフラグがオンされることによって、アイテムデータ104aが更新される。次のステップS143では、第1アプリケーション用記憶領域104に記憶された購入通常アイテムを用いた処理を実行し、ステップS127に進む。このように、獲得コインを使用しなくても、通常コインを使用して通常アイテムを購入することができる。つまり、獲得コインがなくても、第1アプリケーション(ゲーム)を進行させることができる。
【0201】
図17は、図8に示したステップS11の第2アプリケーション実行処理のフロー図である。図17に示すように、CPU50は、第2アプリケーション実行処理を開始すると、ステップS161で、特別コースが選択されたかどうかを判断する。ここでは、CPU50は、図4(C)に示したコース選択画面400において、ボタン画像410またはボタン画像412がオンされたかどうかを判断する。ステップS161で“NO”であれば、つまり特別コースが選択されていなければ、ステップS163で、通常コースが選択されたかどうかを判断する。ここでは、CPU50は、図4(C)に示したコース選択画面400において、ボタン画像402−408のいずれかがオンされたかどうかを判断する。
【0202】
ステップS163で“NO”であれば、つまり通常コースが選択されていなければ、そのまま全体処理にリターンする。一方、ステップS163で“YES”であれば、つまり通常コースが選択されれば、ステップS165で、選択された通常コースにおけるゲーム処理を実行して、全体処理にリターンする。
【0203】
ただし、ステップS165では、CPU50は、ユーザないしプレイヤの指示に従って、選択された通常コースにおいて、プレイヤキャラクタを移動させる。また、コンピュータ(CPU50)は、選択された通常コースにおいて、ノンプレイヤキャラクタを移動させる。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。このように、獲得コインを使用しなくても、通常コースでプレイすることができる。つまり、獲得コインがなくても、第2アプリケーション(ゲーム)を進行させることができる。
【0204】
また、ステップS161で“YES”であれば、つまり特別コースが選択されれば、ステップS167で、コース許可データ106aを参照して、選択された特別コース(この実施例では、特別コースA、B)の許可フラグがオンであるかどうかを判断する。ステップS167で“YES”であれば、つまり選択された特別コースの許可フラグがオンであれば、そのままステップS183に進む。一方、ステップS167で“NO”であれば、つまり選択された特別コースの許可フラグがオフであれば、ステップS169で、選択された特別コースの許可に必要な獲得コインの数NBを取得する。ただし、特別コースA、Bの許可に必要な獲得コインの数NBは予め決定されている。次のステップS171では、獲得総数データ1028を参照して、現在の総獲得コイン数Tを読み出す。
【0205】
そして、ステップS173で、総獲得コイン数T≧獲得コインの数NBであるかどうかを判断する。ステップS173で“NO”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NBに満たない場合には、ステップS175で、選択された特別コースでプレイできない旨のメッセージを表示して、全体処理にリターンする。一方、ステップS173で“YES”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NB以上であれば、ステップS179で、総獲得コイン数Tに、T−NBを設定し、ステップS181で、選択された特別コースの許可フラグをオンする。したがって、コース許可データ106aが更新される。
【0206】
続いて、ステップS183で、選択された特別コースにおけるゲーム処理を実行して、全体処理にリターンする。ステップS183では、CPU50は、ユーザないしプレイヤの指示に従って、選択された特別コースにおいて、プレイヤキャラクタを移動させる。また、コンピュータ(CPU50)は、選択された特別コースにおいて、ノンプレイヤキャラクタを移動させる。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。
【0207】
なお、上述したように、通常コース(第1−第4コース)は獲得コインの数に拘わらず、選択可能であるため、許可フラグをオンするなどの処理は不要である。
【0208】
図18および図19は、マイコン68の歩数検出処理を示すフロー図である。図18に示すように、マイコン68は、歩数検出処理を開始すると、ステップS201で、タイマ152aをスタートさせる。次のステップS203では、所定値以上の加速度を検出したかどうかを判断する。ステップS203で“NO”であれば、つまり所定値以上の加速度を検出していなければ、歩数を検出していないと判断して、そのまま図19に示すステップS213に進む。一方、ステップS203で“YES”であれば、つまり所定値以上の加速度を検出すれば、歩数を検出したと判断して、ステップS205で、歩数カウンタ152bをインクリメントする。
【0209】
続いて、ステップS207では、第1単位時間を経過したかどうかを判断する。ここでは、マイコン68は、タイマ152aのカウント値を参照して、第1単位時間(1時間)が経過したかどうかを判断する。ステップS207で“NO”であれば、つまり第1単位時間を経過していなければ、そのまま図19に示すステップS217に進む。一方、ステップS207で“YES”であれば、つまり第1単位時間を経過すれば、ステップS209で、歩数カウンタ152bのカウント値に日時を付加してメモリ68aに書き込む。ただし、ステップS209では、単位時間毎のまとまりで第n歩数データ152nが記憶される。このとき、マイコン68は、RTC68bで計時される時間から日付および時刻(日時)を計算し、計算した日時に対応する日時データを第n歩数データ152nに付加する。次のステップS211で、歩数カウンタ152bをリセットして、ステップS213に進む。
【0210】
図19に示すように、ステップS213では、第2単位時間を経過したかどうかを判断する。ここでは、マイコン68は、タイマ152aのカウント値を参照して、第2単位時間(3時間)が経過したかどうかを判断する。ステップS213で“NO”であれば、つまり第2単位時間を経過していなければ、そのままステップS217に進む。一方、ステップS213で“YES”であれば、つまり第2単位時間を経過すれば、ステップS215で、日時の付された歩数値をCPU50に出力し、ステップS217に進む。つまり、ゲーム装置10がスリープ状態であっても、第2単位時間毎に、累積歩数データ152cは保存用データメモリ58に記憶(移動)される。図示は省略するが、上述したように、ステップS215では、マイコン68は、CPU50を起動し、また、CPU50の指示の下、電源回路70を制御して、メモリ制御回路54および保存用データメモリ56に電源の供給を開始する。
【0211】
そして、ステップS217では、終了かどうかを判断する。ここでは、マイコン68は、CPU50から歩数のカウント終了の指示があるかどうかを判断する。ただし、厳密には、開閉スイッチ42がオンされたときに、マイコン68はCPU50のクロックを起動させるとともに、電源回路70を制御して、各回路コンポーネントへの電力供給を開始する。そして、スリープ状態から復帰したCPU50が歩数のカウント終了をマイコン68に指示する。
【0212】
ステップS217で“NO”であれば、つまり終了でなければ、そのまま図18に示したステップS203に戻る。一方、ステップS217で“YES”であれば、つまり終了であれば、歩数検出処理を終了する。
【0213】
また、上述したように、図4(A)に示したメインメニュー画面200では、他のアプリケーション(ここでは、第3アプリケーション、第4アプリケーション)が選択される場合もある。たとえば、図20(A)には、第3アプリケーションのプログラム(第3アプリケーションプログラム)に従うゲーム中に、第2LCD18(第1LCD16でも可)に表示されるヒント表示画面500が示される。また、図20(B)には、第4アプリケーションのプログラム(第4アプリケーションプログラム)に従うゲーム中に、第2LCD18(第1LCD16でも可)に表示される成長画面600が示される。
【0214】
図20(A)に示すように、ヒント表示画面500は、プレイヤキャラクタ502、敵キャラクタ504および背景を含むゲーム画面上に、ヒントを見るかどうかを選択させるための選択画面506が表示される。詳細な説明は省略するが、この選択画面506は、第3アプリケーションプログラム(ゲームプログラム)の処理に従って自動的に、または、プレイヤの指示に従って、表示される。
【0215】
また、選択画面506には、ヒントを見るかどうかを質問するためのテキストが表示されるとともに、ボタン画像508およびボタン画像510が表示される。ボタン画像508がオンされると、ヒントを見ることが選択される。また、ボタン画像510がオンされると、ヒントを見ないことが選択される。
【0216】
ボタン画像508がオンされると、図示しないヒントが表示される。たとえば、敵キャラクタ504を倒す方法やプレイヤが次にすべきことのヒントがテキストで表示されたり、プレイヤキャラクタ502が進むべき方向を矢印などの指示画像で表示したりする。一方、ボタン画像510がオンされると、選択画面506が消去(非表示)される。
【0217】
ただし、ヒントを見る場合には、獲得コインを使用する必要があり、総獲得枚数が、ヒントを見るのに必要な枚数以上でなければ、選択画面506は表示されない。または、選択画面506が表示されたとしても、ヒントを表示することは選択できない。ゆえに、選択画面506中(あるいは、選択画面506とは異なる領域)に、現在の総獲得コイン数と、ヒントを見るのに必要な枚数を表示してもよい。
【0218】
このように、獲得コインを使用することにより、ヒントを表示することができるので、難易度の高いゲームであっても、または、ゲームに不慣れな初心者であっても、当該ゲームを気軽に楽しむことができる。また、ヒントを表示しなくても良いため、ゲームの上級者の場合には、ヒントを見ずにゲームを攻略する爽快感や達成感を得ることができる。したがって、ゲームの習熟度を問わず、あらゆるプレイヤに当該ゲームを楽しんでもらうことができる。
【0219】
なお、ここでは、ヒントを表示することにより、プレイヤのゲームの進行を補助するようにしてあるが、これに限定される必要はない。たとえば、獲得コインを使用することにより、プレイヤキャラクタ502の能力を変化させて、ゲームの進行を補助するようにしてもよい。かかる場合には、プレイヤキャラクタ502の残機数が増加されたり、体力が回復したり、一定時間攻撃力が上がったり、一定時間無敵になったり、味方が増えたりする。また、攻撃回数に制限がある場合には、攻撃回数が増加される。さらに、コンピュータ(CPU50)が、特定の難しいコースやミッションを勝手にクリアしてくれたり、クリアしたことにしてくれたり、敵の弱点を見えるようにしてくれたりしてもよい。さらにまた、ゲームを進めていけば獲得コインを使用しなくても手に入れられるもの(通常のルートで手に入れられるもの)を、ゲームに費やす時間がない場合などに、獲得コインを使用することにより、ゲームを進めなくても即座に入手できるようにしてもよい。
【0220】
また、図20(B)に示す成長画面600には、表示枠602、表示枠604、表示枠606が設けられる。表示枠602には、プレイヤないしプレイヤキャラクタが所持する成長前のキャラクタ650が表示される。表示枠604には、キャラクタ650の成長後のキャラクタ652が表示される。表示枠606には、成長率を高くするかどうかを質問するためのテキストが表示されるとともに、ボタン画像608およびボタン画像610が表示される。ボタン画像608がオンされると、成長率を高くすることが選択される。ボタン画像610がオンされると、成長率を高くしないことが選択される。
【0221】
ボタン画像608がオンされると、キャラクタ650の成長率が変化される。たとえば、通常、キャラクタ650がキャラクタ652に成長するのに、ゲーム内の時間(または、現実の時間)において数時間〜数日かかるところを、一気に成長させたり、数時間〜数日よりも短い時間で成長させたりする。一方、ボタン610がオンされると、成長率を変化させないことが選択され、成長画面600が非表示(消去)され、図示しないゲーム画面に戻る。
【0222】
したがって、獲得コインを使用することにより、ゲームを早送りしてプレイすることができ、第3アプリケーションの場合と同様に、ゲームの進行が補助される。ここでは、キャラクタの成長率を高く(成長を促進)するようにしてあるが、これに限定される必要はない。他の例としては、作物や花の成長が促進されてもよい。また、ビルなどの建築物が完成するまでの時間が短くされてもよい。さらに、たとえば、プレイヤキャラクタを行動(攻撃や防御など)させるのに一定の時間間隔を要するゲームでは、その時間間隔を短くすることができる。さらにまた、成長率を高くすることに変えて、プレイヤやプレイヤキャラクタのレベルが通常のプレイよりも短時間で上昇されてもよい。
【0223】
なお、この実施例では、図20(A)のヒント表示画面500が表示されるゲーム(第3アプリケーション)と、図20(B)の成長画面600が表示されるゲーム(第4アプリケーション)とを別のゲームとして説明してあるが、同じゲーム(アプリケーション)の異なる場面であってもよい。
【0224】
第3アプリケーションや第4アプリケーションをゲーム装置10で実行可能とする場合には、図5に示した保存用データメモリ56に、図21(A)に示すような第3アプリケーションプログラム700および図21(B)に示すような第4アプリケーションプログラム750が記憶される。
【0225】
図21(A)に示すように、第3アプリケーションプログラム700は、画像表示プログラム700a、表示選択プログラム700b、獲得数総数取得プログラム700cおよびヒント表示プログラム700dなどによって構成される。
【0226】
画像表示プログラム700aおよび獲得総数取得プログラム700cは、上述した画像表示プログラム94aおよび獲得総数取得プログラム94cと同様であるため、重複した説明は省略する。
【0227】
表示選択プログラム700bは、プレイヤの指示または所定のイベントに従って、図20(A)に示したようなヒント表示画面500を表示し、このヒント表示画面500において、ボタン画像508またはボタン画像510がオンされたかどうかを判断するためのプログラムである。ヒント表示プログラム700dは、ボタン画像508がオンされたことに応じてヒントを表示するためのプログラムである。
【0228】
図示は省略するが、第3アプリケーションプログラム700には、メイン処理プログラム、音出力プログラム、バックアッププログラムおよび種々の処理プログラムなども含まれる。
【0229】
また、図示は省略するが、保存用データメモリ56のデータ記憶領域100には、第3アプリケーション用記憶領域が設けられ、この第3アプリケーション用記憶領域には、ヒントを出すためのデータを含むゲームデータが記憶される。ただし、ヒントを出すためのデータは、ヒントについてのテキストデータ、画像データ、音声データなどである。
【0230】
また、図21(B)に示すように、第4アプリケーションプログラム750は、画像表示プログラム750a、成長選択プログラム750b、獲得数総数取得プログラム750cおよび成長率変化プログラム750dなどによって構成される。
【0231】
画像表示プログラム750aおよび獲得総数取得プログラム750cは、上述した画像表示プログラム94aおよび獲得総数取得プログラム94cと同様であるため、重複した説明は省略する。
【0232】
成長選択プログラム750bは、プレイヤの指示または所定のイベントに従って、図20(B)に示したような成長画面600を表示し、この成長画面600において、ボタン画像608またはボタン画像610がオンされたかどうかを判断するためのプログラムである。成長率変化プログラム750dは、ボタン画像608がオンされたことに応じてキャラクタの成長率を変化させるためのプログラムである。
【0233】
図示は省略するが、第4アプリケーションプログラム750には、メイン処理プログラム、音出力プログラム、バックアッププログラムおよび種々の処理プログラムなども含まれる。
【0234】
また、図示は省略するが、保存用データメモリ56のデータ記憶領域100には、第4アプリケーション用記憶領域が設けられ、この第4アプリケーション用記憶領域には、所定のキャラクタについての成長率のデータを含むゲームデータが記憶される。
【0235】
図22は第3アプリケーション実行処理のフロー図を示し、図23は第4アプリケーション実行処理のフロー図を示す。図示は省略するが、図8に示したステップS5−S11と同様に、第3アプリケーションや第4アプリケーションが選択されたかどうかが判断され、選択されたアプリケーションが実行される。このような選択および実行の処理が、ステップS9とS13との間に挿入されたり、ステップS5−S11の処理に代えて実行されたりする。
【0236】
図22に示すように、CPU50は、第3アプリケーション実行処理を開始すると、ステップS251で、ヒントの表示が指示されたかどうかを判断する。ここでは、CPU50は、図20(A)に示したヒント表示画面500において、ボタン画像508がオンされたかどうかを判断する。ただし、ヒント表示画面500は、第3アプリケーション実行処理を開始した直後に表示されるのではなく、たとえば、ゲーム内で所定のイベントが発生したり、プレイヤからの指示が入力されたりするなどの所定の条件を満たしたときに、表示される。
【0237】
ステップS251で“NO”であれば、つまりボタン画像508がオンされなければ、ステップS253で、ヒントの非表示が指示されたかどうかを判断する。つまり、CPU50は、図20(A)に示したヒント表示画面500において、ボタン画像510がオンされたかどうかを判断する。
【0238】
ステップS253で“NO”であれば、つまりボタン画像510がオンされなければ、そのままステップS269に進む。一方、ステップS253で“YES”であれば、つまりボタン画像510がオンされれば、ステップS255で、選択画面506を非表示して、ステップS269に進む。
【0239】
また、ステップS251で“YES”であれば、つまりボタン画像508がオンされれば、ステップS257で、ヒントの表示に必要な獲得コインの数NCを取得する。ただし、ヒントの表示に必要な獲得コインの数NCは予め決定されている。
【0240】
続くステップS259では、獲得総数データ1028が示す現在の総獲得コイン数Tを読み出す。次のステップS261では、総獲得コイン数T≧獲得コインの数NCであるかどうかを判断する。ステップS261で“NO”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NCに満たない場合には、ステップS263で、ヒントを表示できない旨のメッセージを表示して、ステップS269に進む。一方、ステップS261で“YES”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NC以上である場合には、ステップS265で、総獲得コイン数Tに、T−NCを設定して、ステップS267で、上述したようなヒントを表示して、ステップS269に進む。すなわち、必要となる獲得コイン数を使って(消費して)、ヒントを表示することができる。
【0241】
ステップS269では、その他の処理を実行して、図8および図9に示した全体処理にリターンする。ステップS269では、たとえば、CPU50は、ステップS267で表示されたヒントに応じたプレイヤの指示に従って、プレイヤキャラクタ502に任意のアクションをさせたり、プレイヤキャラクタ502を移動させたりする。また、コンピュータ(CPU50)の制御に従って、プレイヤの操作によらないで移動等するノンプレイヤキャラクタ(敵キャラクタ504など)に任意のアクションをさせたり、ノンプレイヤキャラクタを移動させたりする。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。
【0242】
また、図23に示すように、CPU50は、第4アプリケーション実行処理を開始すると、ステップS281で、成長率を高くするかどうかを判断する。ここでは、CPU50は、図20(B)に示した成長画面600において、ボタン画像608がオンされたかどうかを判断する。ただし、成長画面600は、第4アプリケーション実行処理を開始した直後に表示されるのではなく、たとえば、ゲーム内で所定のイベントが発生したり、プレイヤからの指示が入力されたりするなどの所定の条件を満たしたときに、表示される。
【0243】
ステップS281で“NO”であれば、つまりボタン画像608がオンされなければ、ステップS283で、成長率を高くしないかどうかを判断する。ここでは、CPU50は、図20(B)に示した成長画面600において、ボタン画像610がオンされたかどうかを判断する。ステップS283で“NO”であれば、つまりボタン画像610がオンされなければ、そのままステップS299に進む。一方、ステップS283で“YES”であれば、つまりボタン画像610がオンされれば、成長率を高くしないと判断し、ステップS285で、成長画面600を非表示して、ステップS299に進む。
【0244】
また、ステップS281で“YES”であれば、つまりボタン画像608がオンされれば、ステップS287で、成長率を高くするのに必要な獲得コインの数NDを取得する。ただし、成長率を高くするのに必要な獲得コインの数NDは予め決定されている。
【0245】
続くステップS289では、獲得総数データ1028が示す現在の総獲得コイン数Tを読み出す。次のステップS291では、総獲得コイン数T≧獲得コインの数NDであるかどうかを判断する。ステップS291で“NO”であれば、つまり総獲得コイン数Tが必要な獲得コインの数NDに満たない場合には、ステップS293で、成長率を高くできない旨のメッセージを表示して、ステップS299に進む。一方、ステップS291で“YES”であれば、つまり総獲得コイン数Tが必要な獲得コインの数ND以上である場合には、ステップS295で、総獲得コイン数Tに、T−NDを設定して、ステップS297で、成長率を変化させて(高くして)、ステップS299に進む。すなわち、必要となる獲得コイン数を使って(消費して)、時間がかかるゲームを早送りのようにしてプレイすることができる。
【0246】
ステップS299では、その他の処理を実行して、図8および図9に示した全体処理にリターンする。ステップS299では、たとえば、CPU50は、ステップS297で変化された成長率に基づいて、キャラクタ650を成長させたり、プレイヤの指示に従って、プレイヤキャラクタないしキャラクタ650に任意のアクションをさせたり、プレイヤキャラクタないしキャラクタ650を移動させたりする。また、コンピュータ(CPU50)の制御に従って、プレイヤの操作によらないで移動等するノンプレイヤキャラクタ(敵キャラクタなど)に任意のアクションをさせたり、ノンプレイヤキャラクタを移動させたりする。さらに、CPU50は、スコアを算出したり、ゲームクリアやゲームオーバを判定したりする。そして、CPU50は、ゲームイベントに従う処理を実行したり、音(音楽)を出力する処理を実行したり、ゲーム画面を表示(更新)する処理を実行したりする。
【0247】
この実施例によれば、歩数の相関値として変換した獲得コインを共通データ記憶領域に記憶しておき、これをゲーム装置で実行される複数のアプリケーションで共通に用いることができる。また、この実施例では、スリープ状態のゲーム装置を持ち歩くだけで、すれ違い通信により、他のゲーム装置やアクセスポイントからデータを取得することができ、また歩数に応じて特殊アイテムを取得したり、特別コースでプレイできたり、ヒントを得たり、ゲームを早送りしたりすることができる。
【0248】
なお、この実施例では、すれ違い通信機能を備えたゲーム装置について説明したが、他の機能(アプリケーション)を備えたゲーム装置であってもよい。
【0249】
また、この実施例では、メインメニュー画面が表示されたときに、コイン獲得処理を実行するようにしたが、これに限定される必要はない。ゲーム装置がスリープ状態から非スリープ状態に移行したときに実行するようにしてもよい。または、それらの両方で実行するようにしてもよい。
【0250】
さらに、この実施例では、ゲーム装置を閉じた場合に、スリープモードに移行するようにしたが、これに限定される必要はない。ゲーム装置の主電源がオンされている状態(通常モード)で、一定時間(たとえば、10分)操作が無い場合や所定の操作が実行された場合に、スリープモードに移行するようにしてもよい。かかる場合には、スリープ状態において、何らかの操作が実行された場合や所定の操作が実行された場合に、非スリープモード(通常モード)に移行する(戻る)ようにすればよい。
【0251】
さらにまた、この実施例では、省電力モードの一例として、スリープモードを示し、上述したように、ゲーム装置における電力制御などを行うようにしたが、単にLCDの電源をオフするだけでもよい。
【0252】
また、この実施例では、通常アイテムと特殊アイテムとを同じ画面に表示して、購入するアイテムを選択するようにしたが、通常アイテムと特殊アイテムとは異なる画面に表示するようにしてもよい。これは、通常コースと特別コースとについても同様である。
【0253】
さらに、この実施例では、特殊アイテムが選択されたときに、総獲得コイン数と、購入に必要な獲得コイン数とを比較して、特殊アイテムを購入できるかどうかを判断するようにした。他の実施例として、アイテム購入画面を表示する際に、総獲得コイン数と、購入に必要な獲得コインの数とを比較して、特殊アイテムを購入可能かどうかを判断し、購入できない特殊アイテムについては非表示にしたり、グレーアウトしたりしてもよい。このことは、通常アイテムや特別コース(コース選択画面)についても同様である。また、ヒントの表示(ヒント表示画面)および成長率の変化(成長画面)については、総獲得コイン数が必要な獲得コインの数に満たない場合には、画面自体を表示せずに、ヒントを表示したり、成長率を変化したりできない旨を表示するようにしてもよい。
【0254】
さらにまた、この実施例では、歩数を獲得コインに変換して、複数のアプリケーションで共通に使用するようにしたが、歩数をそのまま利用するようにしてもよい。
【0255】
また、ゲーム装置の構成は実施例のものに限定される必要はない。たとえば、カメラは、1つでもよく、無くてもよい。また、タッチパネルを2つのLCD上に設けてもよい。
【0256】
さらに、この実施例では、マイコンは、CPUからの指示により、歩数のカウントを開始/終了するようにしたが、開閉スイッチがオフされたときに歩数のカウントを開始し、開閉スイッチがオンされたときに歩数のカウントを終了するようにしてもよい。
【0257】
さらにまた、この実施例では、共用データ記憶領域のうちのコイン獲得数データが複数のアプリケーションで共用できればよいので、少なくともコイン獲得数データを共用データ記憶領域に含め、それ以外の累積歩数データ、前回歩数累計データ、現在歩数累計データ、前回日データおよび前回日歩数データを共用できない他の記憶領域(たとえば、本体処理専用の記憶領域)に含めるようにしてもよい。
【0258】
また、この実施例では、折り畳み式のゲーム装置を開閉することにより、通常モードとスリープモードとを切り替えるようにしたが、ゲーム装置に開閉可能な蓋を設けて、当該蓋を開閉することにより、通常モードとスリープモードとを切り替えるようにしてもよい。または、ゲーム装置を収容可能なケースを設けて、当該ケースから取り出したり、当該ケースに収容したりすることにより、通常モードとスリープモードとを切り替えるようにしてもよい。つまり、ユーザないしプレイヤが使用しない場合に、スリープモードが設定され、すれ違い通信またはいつの間に通信が実行されるとともに、歩数がカウントされればよい。
【0259】
さらに、携帯ゲーム装置に限らず、携帯電話機、PDAなど、持ち運びが容易な他の携帯情報端末にも適用可能である。
【0260】
この発明はまた、家庭などに設置して使用される据え置き型ゲーム装置、パソコン端末、ゲーム処理のための各処理が複数のコンピュータ等によって分散処理されるようなゲームシステムにも適用可能である。
【0261】
また、上述の実施例では、歩数計の機能をゲーム装置10に持たせるようにしたが、歩数計をゲーム装置10とは別に設けて、歩数計で計測した歩数をゲーム装置が取得するようにしてもよい。たとえば、図24に示すゲームシステム1000は、ゲーム装置10および歩数計1200を含む。ゲーム装置10と歩数計1200とは、たとえばIrDAのような近距離無線通信により互いにデータを送受信する。ただし、有線で接続されて、通信可能としてもよい。
【0262】
なお、ここでは、上述の実施例で示したゲーム装置10を用いるようにしてあるが、ゲーム装置10から加速度センサ88を除去するなどして、歩数計機能を無くしてもよい。
【0263】
また、図24に示すようなゲームシステム1000を構成する場合には、歩数計1200と通信するためのメモリカード28が用いられる。メモリカード28の電気的な構成が図25に示される。
【0264】
図25に示すように、メモリカード28は、メモリカードI/F62に接続される図示しないコネクタと接合されるコネクタ1100を含み、コネクタ1100には、バス1102を介してROM1104およびマイコン1106が接続される。マイコン1106には、バックアップ用メモリ1108およびIr通信用回路1110が接続される。
【0265】
マイコン1106は、CPUコア34の制御下で、バックアップ用メモリ1108の書込みおよび読出し、ならびにIr通信用回路1110を用いた赤外線通信(Ir通信)を制御する。つまり、CPU50は、マイコン1106を介してバックアップ用メモリ1108にデータを書き込み、バックアップ用メモリ1108からデータを読み出す。また、CPU50は、マイコン1106およびIr通信用回路1110を介して、歩数計1200とデータを送受信する。なお、図示しないが、Ir通信用回路1110の通信ポートは、メモリカード28がゲーム装置10に装着されたときに露出する部分(たとえば上端面)に設けられている。
【0266】
ROM1104は、上述したように、ゲーム装置10で実行すべきゲームのためのゲームプログラム、画像データ(キャラクタの画像、背景画像、アイテム画像、アイコン(ボタン)画像、メッセージ画像など)およびゲームに必要な音(音楽)のデータ(音データ)等を予め記憶する。バックアップ用メモリ1108は、そのゲームの途中データやゲームの結果データなどを記憶(セーブ)するためのものである。バックアップ用メモリ1108としては、フラッシュメモリのような不揮発性メモリ、または電池から電源が供給されるSRAMなどが用いられ得る。
【0267】
なお、ゲーム装置10本体にIr通信用回路1110を内蔵し、ゲーム装置10内の保存用データメモリ56にゲームプログラムやセーブデータなどを記憶するようにしてもよい。このようにすれば、歩数計1200と通信するためのメモリカード28は不要で、ゲーム装置10と歩数計1200との間で直接通信を行うことができる。
【0268】
図26は歩数計1200の一例を示す斜視図である。歩数計1200は、略直方体形状のハウジング1202を有し、ハウジング1202は、プレイヤないしユーザのポケット等に簡単に収容可能なように小型化されており、一例として、縦横の長さは3〜4cm程度、厚さは1cm程度である。ハウジング1202の一方主面(上面)には押しボタン1204が設けられる。メモリカード28のIr通信用回路1110が通信待機状態にある場合に、ユーザによってこの押しボタン1204が押されると、歩数計1200はメモリカード28すなわちゲーム装置10と通信を開始する。また、押しボタン1204の端部にはLED1206が設けられる。LED1206は、たとえば2色LEDであり、色や点滅パターンによって、歩数計1200の動作状態を表現する。また、ハウジング1202の側面(先端面)には、赤外線通信ポート1208が設けられる。なお、歩数計1200の動作電源としては、たとえばコイン型リチウム電池(CR2032)が使用され、ハウジング1202の他方主面(下面)には電池蓋が取り外し可能に設けられている。
【0269】
図27は、歩数計1200の電気的な構成の一例を示すブロック図である。歩数計1200はマイコン1210を含み、マイコン1210には、増幅回路1212を介してショックセンサ1214が接続される。また、マイコン1210には、押しボタン1204、LED1206、EEPROM1216およびIr通信用回路1218が接続される。
【0270】
マイコン1210は、歩数計アルゴリズムを内蔵した低消費電力マイコンであり、ショックセンサ1214からの出力データの検出、EEPROM1216の書込みおよび読出し、LED1206の点滅、Ir通信用回路1218を用いた赤外線通信など、歩数計1200の全体動作を制御する。
【0271】
ショックセンサ1214は、プレイヤないしユーザの歩行に応じた動きを検出するためのセンサであり、たとえばHDDの衝撃検知に用いられるショックセンサ(加速度センサ)が適用され得る。ショックセンサ1214は、この実施例では2軸に配置され、これによって、歩数計1200をポケットや鞄等に入れた状態で歩数を計測または検出することが可能になっている。ショックセンサ1214の出力は増幅回路1212で増幅されてマイコン1210に入力される。マイコン1210にはADコンバータが内蔵されているので、マイコン1210はショックセンサ1214の出力をサンプリングして出力データ(加速度データ)を取得する。マイコン1210は、出力データと歩数計アルゴリズムに基づいて歩数をカウントし、単位時間ごとに歩数の累計値(カウント数)を順次EEPROM1216に記憶する。つまり、EEPROM1216には歩数データとして単位時間ごとの歩数値の履歴が保存される。
【0272】
ただし、EEPROM1216の歩数データの保存領域には限りがある。たとえば、1分単位ごとに歩数値を記憶する場合には、EEPROM1216には約7日分の歩数履歴を保存することができる。保存領域が一杯になった場合には、最も古く記憶された歩数値が上書きされる。また、この実施例では、歩数値の記録の単位時間は1分に設定されるが、たとえば1時間、1日などに適宜変更可能である。
【0273】
マイコン1210は、動作状態に応じてLED1206の色や点滅パターンを制御する。たとえば、当日の歩数が予め設定しておいた歩数を超えたときには、LED1206の色が赤から黄緑に変更される。また、押しボタン1204が押されたときには、マイコン1210は、Ir通信用回路1218を用いてゲーム装置10(メモリカード28)との通信を開始するとともに、当該通信開始確認と動作確認のためにLED1206を点滅させる。
【0274】
押しボタン1204が押されることによって通信を開始すると、マイコン1210は、歩数計1200のID(識別情報)を内蔵ROMまたはEEPROM1216から読み出し、当該IDを含むデータをIr通信用回路1218を介してゲーム装置10に送信する。その後、ゲーム装置10から歩数データの要求を受信すると、マイコン1210は、EEPROM1216から必要な歩数データを読み出してゲーム装置10に送信する。
【0275】
なお、ゲーム装置10は、前回歩数計1200から歩数データを受信したときの日時情報を記憶しており、必要な時間または個数の歩数値を要求するので、マイコン1210は、現在の歩数値から過去に遡って、必要な時間または個数の歩数値を読み出して、ゲーム装置10に送信することができる。
【0276】
また、このゲームシステム1000では、ゲーム装置10は、歩数をカウントする必要がなく、歩数データを受信したときに、歩数を獲得コインに換算すれば良い。具体的には、上述した全体処理(図8および図9)において、ステップS21、S31−S35の処理を削除するとともに、ステップS1とステップSS3との間に、歩数データを受信したかどうかを判断するステップを設けて、歩数データを受信したときに、ステップS3のコイン獲得処理を実行すればよい。また、マイコン68は歩数検出処理(図18および図19)を実行する必要がない。
【0277】
なお、歩数を獲得コインに変換する処理は、歩数計1200が行うようにしてもよい。このようにすれば、ゲーム装置10は、歩数計1200から獲得コイン数を受信すればよい。
【符号の説明】
【0278】
10 …ゲーム装置
12,14 …ハウジング
16,18 …LCD
20 …操作ボタン
22 …タッチパネル
24 …タッチペン
26,28 …メモリカード
32,34 …カメラ
50 …CPU
52 …メインメモリ
54 …メモリ制御回路
56 …保存用データメモリ
58 …プリセットデータ用メモリ
60,62 …メモリカードI/F
64 …無線通信モジュール
66 …ローカル通信モジュール
68 …マイコン
68a …メモリ
68b …RTC
70 …電源回路
72 …I/F回路
74,76 …GPU
78,80 …VRAM
82 …LCDコントローラ
84 …マイク
88 …加速度センサ
1000 …ゲームシステム
1200 …歩数計
【特許請求の範囲】
【請求項1】
入力手段を備えるゲーム装置であって、
歩数を計測する歩数計測手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数計測手段によって計測された歩数を前記ゲームに利用する利用手段を備え、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲーム装置。
【請求項2】
前記利用手段は、前記入力手段からの入力に基づいて、前記歩数を前記ゲームに利用し、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されないときは、前記入力手段からの入力に基づいてゲームを進行させるゲーム処理を実行し、前記利用手段によって前記歩数が利用されたときは、当該ゲーム処理に加えて当該ゲームの進行を支援する補助処理を実行する、請求項1記載のゲーム装置。
【請求項3】
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行のヒントとなる情報を出力する、請求項1または2記載のゲーム装置。
【請求項4】
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行に要する時間を低減する処理を実行する、請求項1または2記載のゲーム装置。
【請求項5】
前記ゲーム装置は、前記歩数計測手段によって計測された歩数を当該歩数に相関する歩数相関値に変換して蓄積する蓄積手段をさらに備え、
前記利用手段は、前記蓄積手段によって蓄積された前記歩数相関値を前記ゲームに利用する、請求項1ないし4のいずれかに記載のゲーム装置。
【請求項6】
前記利用手段は、前記歩数相関値が所定値以上である場合に、当該歩数相関値を前記ゲームに利用する、請求項5記載のゲーム装置。
【請求項7】
前記利用手段によって前記歩数相関値が前記ゲームに利用されたとき、当該歩数相関値を減少させる減算手段をさらに備える、請求項6記載のゲーム装置。
【請求項8】
前記ゲーム装置の不使用状態と使用状態とを切り替える切替手段、および
前記使用状態から前記不使用状態になったかどうかを判別する切替判別手段をさらに備え、
前記歩数計測手段は、前記切替判別手段によって前記不使用状態になったことが判別されたとき、歩数を計測する、請求項1ないし7のいずれかに記載のゲーム装置。
【請求項9】
前記切替手段は、省電力モードと通常モードとを切り替え、
前記切替判別手段は、前記通常モードから前記省電力モードになったかどうかを判別することによって前記使用状態から前記不使用状態になったかどうかを判別する、請求項8記載のゲーム装置。
【請求項10】
前記ゲーム処理手段を不能化する不能化手段をさらに備え、
前記切替手段は、前記不能化手段によって前記ゲーム処理手段が不能化されることによって前記使用状態から前記不使用状態に切り替える、請求項8記載のゲーム装置。
【請求項11】
装置本体は開閉可能な機構を有し、
前記切替手段は、前記装置本体が閉じられている状態と開かれている状態とを切り替え、
前記切替判別手段は、前記装置本体が開かれている状態から閉じられている状態になったかどうかを判別することによって前記使用状態から前記不使用状態になったかどうかを判別する、請求項8記載のゲーム装置。
【請求項12】
通信手段をさらに備え、
前記通信手段は、前記歩数計測手段によって歩数が計測される間、自動的に通信処理を実行する、請求項1ないし11のいずれかに記載のゲーム装置。
【請求項13】
前記通信手段は、他のゲーム装置の探索を自動的に行い、探索されたとき、当該他のゲーム装置との間でデータの送受信を自動的に実行する、請求項1ないし12のいずれかに記載のゲーム装置。
【請求項14】
前記通信手段は、所定のアクセスポイントの探索を自動的に行い、探索されたとき、当該アクセスポイントを介したデータの送受信を自動的に実行する、請求項1ないし12のいずれかに記載のゲーム装置。
【請求項15】
入力手段を備えるゲーム装置であって、
歩数を取得する歩数取得手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数取得手段によって取得された歩数を前記ゲームに利用する利用手段を備え、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲーム装置。
【請求項16】
入力手段を備えるゲーム装置のゲームプログラムであって、
前記ゲーム装置のコンピュータを、
歩数を計測する歩数計測手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数計測手段によって計測された歩数を前記ゲームに利用する利用手段として機能させ、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲームプログラム。
【請求項17】
入力手段を備えるゲーム装置のゲームプログラムであって、
前記ゲーム装置のコンピュータを、
歩数を取得する歩数取得手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数取得手段によって取得された歩数を前記ゲームに利用する利用手段として機能させ、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲームプログラム。
【請求項18】
入力手段を備えるゲーム装置のゲーム制御方法であって、
(a)歩数を計測し、
(b)前記入力手段からの入力に基づいてゲームを進行させ、そして
(c)前記ステップ(a)によって計測された歩数を前記ゲームに利用し、
前記ステップ(b)は、前記ステップ(c)によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲーム制御方法。
【請求項19】
入力手段を備えるゲーム装置のゲーム制御方法であって、
(a)歩数を取得し、
(b)前記入力手段からの入力に基づいてゲームを進行させ、そして
(c)前記ステップ(a)によって取得された歩数を前記ゲームに利用し、
前記ステップ(b)は、前記ステップ(c)によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲーム制御方法。
【請求項20】
入力手段を備えるゲームシステムであって、
歩数を計測する歩数計測手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数計測手段によって計測された歩数を前記ゲームに利用する利用手段を備え、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲームシステム。
【請求項21】
入力手段を備えるゲーム装置および歩数を計測する歩数計を備えるゲームシステムであって、
前記ゲーム装置は、
前記歩数計から歩数を取得する歩数取得手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数取得手段によって取得された歩数を前記ゲームに利用する利用手段を備え、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲームシステム。
【請求項1】
入力手段を備えるゲーム装置であって、
歩数を計測する歩数計測手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数計測手段によって計測された歩数を前記ゲームに利用する利用手段を備え、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲーム装置。
【請求項2】
前記利用手段は、前記入力手段からの入力に基づいて、前記歩数を前記ゲームに利用し、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されないときは、前記入力手段からの入力に基づいてゲームを進行させるゲーム処理を実行し、前記利用手段によって前記歩数が利用されたときは、当該ゲーム処理に加えて当該ゲームの進行を支援する補助処理を実行する、請求項1記載のゲーム装置。
【請求項3】
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行のヒントとなる情報を出力する、請求項1または2記載のゲーム装置。
【請求項4】
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行に要する時間を低減する処理を実行する、請求項1または2記載のゲーム装置。
【請求項5】
前記ゲーム装置は、前記歩数計測手段によって計測された歩数を当該歩数に相関する歩数相関値に変換して蓄積する蓄積手段をさらに備え、
前記利用手段は、前記蓄積手段によって蓄積された前記歩数相関値を前記ゲームに利用する、請求項1ないし4のいずれかに記載のゲーム装置。
【請求項6】
前記利用手段は、前記歩数相関値が所定値以上である場合に、当該歩数相関値を前記ゲームに利用する、請求項5記載のゲーム装置。
【請求項7】
前記利用手段によって前記歩数相関値が前記ゲームに利用されたとき、当該歩数相関値を減少させる減算手段をさらに備える、請求項6記載のゲーム装置。
【請求項8】
前記ゲーム装置の不使用状態と使用状態とを切り替える切替手段、および
前記使用状態から前記不使用状態になったかどうかを判別する切替判別手段をさらに備え、
前記歩数計測手段は、前記切替判別手段によって前記不使用状態になったことが判別されたとき、歩数を計測する、請求項1ないし7のいずれかに記載のゲーム装置。
【請求項9】
前記切替手段は、省電力モードと通常モードとを切り替え、
前記切替判別手段は、前記通常モードから前記省電力モードになったかどうかを判別することによって前記使用状態から前記不使用状態になったかどうかを判別する、請求項8記載のゲーム装置。
【請求項10】
前記ゲーム処理手段を不能化する不能化手段をさらに備え、
前記切替手段は、前記不能化手段によって前記ゲーム処理手段が不能化されることによって前記使用状態から前記不使用状態に切り替える、請求項8記載のゲーム装置。
【請求項11】
装置本体は開閉可能な機構を有し、
前記切替手段は、前記装置本体が閉じられている状態と開かれている状態とを切り替え、
前記切替判別手段は、前記装置本体が開かれている状態から閉じられている状態になったかどうかを判別することによって前記使用状態から前記不使用状態になったかどうかを判別する、請求項8記載のゲーム装置。
【請求項12】
通信手段をさらに備え、
前記通信手段は、前記歩数計測手段によって歩数が計測される間、自動的に通信処理を実行する、請求項1ないし11のいずれかに記載のゲーム装置。
【請求項13】
前記通信手段は、他のゲーム装置の探索を自動的に行い、探索されたとき、当該他のゲーム装置との間でデータの送受信を自動的に実行する、請求項1ないし12のいずれかに記載のゲーム装置。
【請求項14】
前記通信手段は、所定のアクセスポイントの探索を自動的に行い、探索されたとき、当該アクセスポイントを介したデータの送受信を自動的に実行する、請求項1ないし12のいずれかに記載のゲーム装置。
【請求項15】
入力手段を備えるゲーム装置であって、
歩数を取得する歩数取得手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数取得手段によって取得された歩数を前記ゲームに利用する利用手段を備え、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲーム装置。
【請求項16】
入力手段を備えるゲーム装置のゲームプログラムであって、
前記ゲーム装置のコンピュータを、
歩数を計測する歩数計測手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数計測手段によって計測された歩数を前記ゲームに利用する利用手段として機能させ、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲームプログラム。
【請求項17】
入力手段を備えるゲーム装置のゲームプログラムであって、
前記ゲーム装置のコンピュータを、
歩数を取得する歩数取得手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数取得手段によって取得された歩数を前記ゲームに利用する利用手段として機能させ、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲームプログラム。
【請求項18】
入力手段を備えるゲーム装置のゲーム制御方法であって、
(a)歩数を計測し、
(b)前記入力手段からの入力に基づいてゲームを進行させ、そして
(c)前記ステップ(a)によって計測された歩数を前記ゲームに利用し、
前記ステップ(b)は、前記ステップ(c)によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲーム制御方法。
【請求項19】
入力手段を備えるゲーム装置のゲーム制御方法であって、
(a)歩数を取得し、
(b)前記入力手段からの入力に基づいてゲームを進行させ、そして
(c)前記ステップ(a)によって取得された歩数を前記ゲームに利用し、
前記ステップ(b)は、前記ステップ(c)によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲーム制御方法。
【請求項20】
入力手段を備えるゲームシステムであって、
歩数を計測する歩数計測手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数計測手段によって計測された歩数を前記ゲームに利用する利用手段を備え、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲームシステム。
【請求項21】
入力手段を備えるゲーム装置および歩数を計測する歩数計を備えるゲームシステムであって、
前記ゲーム装置は、
前記歩数計から歩数を取得する歩数取得手段、
前記入力手段からの入力に基づいてゲームを進行させるゲーム処理手段、および
前記歩数取得手段によって取得された歩数を前記ゲームに利用する利用手段を備え、
前記ゲーム処理手段は、前記利用手段によって前記歩数が利用されたとき、前記ゲームの進行を補助する処理を実行する、ゲームシステム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【公開番号】特開2012−170674(P2012−170674A)
【公開日】平成24年9月10日(2012.9.10)
【国際特許分類】
【出願番号】特願2011−36681(P2011−36681)
【出願日】平成23年2月23日(2011.2.23)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】
【公開日】平成24年9月10日(2012.9.10)
【国際特許分類】
【出願日】平成23年2月23日(2011.2.23)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】
[ Back to top ]