JP5538690B2 - ゲーム装置、ゲームプログラムおよび情報処理装置 - Google Patents

ゲーム装置、ゲームプログラムおよび情報処理装置 Download PDF

Info

Publication number
JP5538690B2
JP5538690B2 JP2008154415A JP2008154415A JP5538690B2 JP 5538690 B2 JP5538690 B2 JP 5538690B2 JP 2008154415 A JP2008154415 A JP 2008154415A JP 2008154415 A JP2008154415 A JP 2008154415A JP 5538690 B2 JP5538690 B2 JP 5538690B2
Authority
JP
Japan
Prior art keywords
game
human body
player
game device
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008154415A
Other languages
English (en)
Other versions
JP2009297228A (ja
JP2009297228A5 (ja
Inventor
巌 増山
隆二 梅津
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2008154415A priority Critical patent/JP5538690B2/ja
Publication of JP2009297228A publication Critical patent/JP2009297228A/ja
Publication of JP2009297228A5 publication Critical patent/JP2009297228A5/ja
Application granted granted Critical
Publication of JP5538690B2 publication Critical patent/JP5538690B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、他のゲーム装置と通信可能なゲーム装置および情報処理装置、ならびに当該ゲーム装置で実行されるゲームプログラムに関し、特に人体通信により他の装置と通信可能な構成に関する。
従来から、特許文献1に開示されるように、無線通信を利用して互いに通信可能な携帯型のゲーム装置が知られている。
ところで、人体を電気的な信号の伝搬媒体として用いる人体通信を利用する各種の通信装置が開示されている(たとえば、特許文献2〜5)。
特開2005−254012号公報 特開2002−246987号公報 特開2004−260800号公報 特開2004−088223号公報 特開2006−279365号公報
一般的に、アンテナから送信される電磁波は、その送信パターンなどに応じた比較的広い範囲に拡散伝搬する。そのため、たとえば複数のゲーム装置が近接している場合に、特定のゲーム装置の間でのみ通信を行なおうとすると、相手先を特定するための各種設定を行なう必要があった。
このように、無線通信を利用したゲーム装置において、他のゲーム装置との間で通信可能なゲームを提供しようとすると、プレイヤに対して通信に必要な設定の入力を促すといった、ゲーム進行の自由度を低下させてしまう要因を完全に排除することはできなかった。
この発明は、このような課題を解決するためになされたものであって、その目的は、プレイヤが通信に必要な設定を入力することなく、直感的に任意のゲーム装置との間で通信を行なうことができるゲーム装置、ゲームプログラムおよび情報処理装置を提供することである。
この発明のある局面に従えば、他のゲーム装置と通信可能なゲーム装置(100:実施の形態で相当する参照符号。以下同じ。)を提供する。ゲーム装置(100)は、プレイヤによる画面に対する接触座標を検出するための座標検出手段(20)を含む表示部(14)と、表示部(14)に接触または近接した人体の一部を介して、他のゲーム装置(100)との間で人体通信を行なうための通信部(56)と、ゲームオブジェクトを表示するための情報を記憶する記憶部(48;26)と、記憶部(48;26)に記憶された情報に基づいて、表示部(14)にゲームオブジェクトを表示する表示制御手段(42,52,54)と、座標検出手段(20)によって表示中のいずれかのゲームオブジェクトの選択が検出される(S120〜S124)と、人体通信によって、当該選択オブジェクトに関する情報の送信(S134)、および他のゲーム装置(100)から送信される情報の受信(S144,S146)の少なくとも一方を実行する通信制御手段(42)とを含む。
この発明の類似した局面に従えば、演算処理部(42)と、表示部(14)と、他のゲーム装置との間で人体通信を行なうための通信部(56)とを備えたゲーム装置(100)によって実行されるゲームプログラム(48a)を提供する。ゲームプログラム(48a)は、演算処理部(42)に、ゲームオブジェクトを表示するための情報に基づいて、表示部にゲームオブジェクトを表示するステップ(S6)と、プレイヤ操作による表示部(14)に表示中のゲームオブジェクトについての選択を受付けるステップ(S120〜S124)と、表示部(14)に接触または近接した人体の一部を介して、当該選択オブジェクトに関する情報の送信(S134)、および他のゲーム装置(100)から送信される情報の受信(S144,S146)の少なくとも一方を含む人体通信を行なうステップとを実行させる。
これらの発明によれば、プレイヤが、自身のゲーム装置(100)の仮想ゲーム空間内で獲得したキャラクターやアイテムといったゲームオブジェクトを、他のゲーム装置(100)の仮想ゲーム空間内で獲得されているゲームオブジェクトと交換するような場合において、表示部(14)に表示されるゲームオブジェクトのうち、対象とすべきものを選択するためにプレイヤ操作を行なうと、このプレイヤ操作に伴って、人体通信のための伝搬経路の一端が形成される。同時に、同一のプレイヤが他のゲーム装置(100)においても、表示部(14)に表示されるゲームオブジェクトのうち、対象とすべきものを選択するためにプレイヤ操作を行なうことで、両ゲーム装置(100)の間には、プレイヤを介して、人体通信のための伝搬経路が形成される。このような人体通信のための伝搬経路は、必然的に、交換の対象となるゲーム装置(100)の間を電気的に結合する(一種の有線接続)。すなわち、両ゲーム装置(100)の間は、直接接続されているものに等しく、その結果、複雑な通信設定などを行なう必要がない。
従って、プレイヤが2つのゲーム装置(100)の表示部(14)に表示されるゲームオブジェクトをそれぞれ選択(タッチ操作)するだけで、人体通信を用いて、対象となるゲームオブジェクトに関する情報を当該ゲーム装置(100)の間で送受信することができる。プレイヤから見れば、ゲーム装置(100)の間でゲームオブジェクトを交換する際には、所望するゲームオブジェクトを直感的に選択(タッチ操作)するだけでよく、これにより、ゲーム進行の自由度を低下させることなく、プレイヤ同士のコミュニケーションが促進されるとともに、ゲーム展開のバリエーションを広げることもできる。
また、ゲーム装置(100)は、選択オブジェクトに関する情報の送信完了(S136〜S140;S336,S338)後、または他のゲーム装置(100)から送信される情報の受信完了(S144〜S148;S534,S536)後に、記憶部(48;26)に記憶された対応する情報(48c)を更新する情報更新手段(42,S152,S154;S340;S538)をさらに含むことが好ましい。
同様に、ゲームプログラム(48a)は、選択オブジェクトに関する情報の送信完了(S136〜S140;S336,S338)後、または他のゲーム装置から送信される情報の受信完了後に、予め記憶された対応する情報(48c)を更新するステップ(S152,S154;S340;S538)をさらに実行させることが好ましい。
すなわち、送信完了または受信完了を待って、記憶部(48;26)に記憶された対応する情報(48c)が更新されるので、選択オブジェクトに関する情報の送信完了前または送信完了前に、何らかの通信エラーが発生した場合であっても、記憶部(48;26)に記憶された情報が乱されることがない。
また、ゲーム装置(100)は、他のゲーム装置(100)との間の人体通信の状態を判断する通信状態判断手段(42;SQ40a,40b〜SQ46)をさらに含むことが好ましい。この通信状態判断手段は、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置から送信される情報の受信完了前に、人体通信が途切れたと判断される(S168,S352,S552)と、実行中の送信または受信を中止する(S162,S164;S348;S546,S548)。
同様に、ゲームプログラム(48a)は、他のゲーム装置(100)との間の人体通信の状態を判断するステップ(42;SQ40a,40b〜SQ46)と、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置から送信される情報の受信完了前に、人体通信が途切れたと判断される(S168,S352,S552)と、実行中の送信または受信を中止するステップ(S162,S164;S348;S546,S548)とをさらに実行させることが好ましい。
このような構成によれば、プレイヤ操作(表示部に対するタッチ操作)が外れたような場合に、人体通信のエラー発生を検出して、適切な終了処理を行なうことができる。
また、ゲーム装置(100)の通信制御手段(42)は、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置から送信される情報の受信完了前に、座標検出手段による選択オブジェクトについてのプレイヤ操作の検出が途切れる(S156;S342;S540)と、実行中の送信または受信を中止する(S162,S164;S348;S546,S548)ことが好ましい。
同様に、ゲームプログラム(48a)は、選択オブジェクトについてのプレイヤ操作の検出が継続しているか否かを判断するステップ(S156;S342;S540)と、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置から送信される情報の受信完了前に、選択オブジェクトについてのプレイヤ操作の検出が途切れたと判断されると、実行中の送信または受信を中止するステップ(S162,S164;S348;S546,S548)と、をさらに実行させることが好ましい。
このような構成によれば、プレイヤ操作(表示部に対するタッチ操作)が外れることで生じる人体通信のエラーを予測して、適切な終了処理を行なうことができる。
また、ゲーム装置(100)の記憶部(48;26)がゲームオブジェクトに対応付けてパラメータを記憶し、選択オブジェクトに対応付けられたパラメータを他のゲーム装置との間で人体通信が確立している期間に応じた値だけ増減するように構成することが好ましい。
同様に、ゲームプログラム(48a)は、ゲームオブジェクトに対応付けてパラメータを予め記憶しておき、選択オブジェクトに対応付けられたパラメータを他のゲーム装置との間で人体通信が確立している期間に応じた値だけ増減する処理を実行することが好ましい。
より好ましくは、ゲーム装置(100)の通信制御手段(42)は、選択オブジェクトに関する情報として、選択オブジェクトに対応付けられた数値データを送信する(SQ60,S335)ようにしてもよい。この場合において、ゲーム装置(100)は、選択オブジェクトに対応付けられた数値データの送信(SQ60)毎、または他のゲーム装置から送信される数値データの受信(SQ60)毎に、対応するパラメータを順次更新する情報更新手段(42;SQ64a,S341;SQ64b,S535,S537)と、他のゲーム装置(100)との間の人体通信の状態を判断する通信状態判断手段(S352,S552)とをさらに含むことが好ましく、通信制御手段(42)による数値データの送信と、対応するパラメータの更新とは、人体通信が確立している期間において、交互に連続的に実行されることが好ましい。
同様に、選択オブジェクトに関する情報は、選択オブジェクトに対応付けられた数値データを含んでいてもよい。この場合において、ゲームプログラム(48a)は、選択オブジェクトに対応付けられた数値データの送信(SQ60)毎、または他のゲーム装置から送信される数値データの受信(SQ60)毎に、記憶部(48;26)に記憶された対応する情報を順次更新するステップ(SQ64a,S341;SQ64b,S535,S537)と、他のゲームプログラムとの間の人体通信の状態を判断するステップ(S352,S552)と、他のゲームプログラムとの間の人体通信が確立していると判断されている期間において、数値データの送信と対応するパラメータの更新とを、交互に連続的に実行するステップとをさらに実行させることが好ましい。
このような構成によれば、プレイヤ操作(表示部に対するタッチ操作)がいずれのタイミングで外れたとしても、両ゲーム装置(100)の間で送受信される数値データにずれが生じることを回避できる。また、プレイヤから見れば、両ゲーム装置(100)の間で、プレイヤ操作(表示部に対するタッチ操作)を継続した時間に応じた数値データを送受信する(移動させる)ことができる。
あるいは、ゲーム装置(100)の通信制御手段(42)は、選択オブジェクトに関する情報として、選択オブジェクトに対応付けられた数値データを送信する(SQ60,S335)ようにしてもよい。この場合において、ゲーム装置(100)は、選択オブジェクトに対応付けられた数値データの送信(SQ60)毎、または他のゲーム装置から送信される数値データの受信(SQ60)毎に、対応するパラメータを順次更新する情報更新手段(42;SQ64a,S341;SQ64b,S535,S537)とをさらに含むことが好ましく、かつ通信制御手段(42)による数値データの送信と、対応するパラメータの更新とは、座標検出手段(20)による選択オブジェクトについてのプレイヤ操作の検出が継続している期間において、交互に連続的に実行されることが好ましい。
同様に、選択オブジェクトに関する情報は、選択オブジェクトに対応付けられた数値データを含んでいてもよい。この場合において、ゲームプログラム(48a)は、選択オブジェクトに対応付けられた数値データの送信(SQ60)毎、または他のゲーム装置から送信される数値データの受信(SQ60)毎に、対応するパラメータを順次更新するステップ(SQ64a,S341;SQ64b,S535,S537)と、選択オブジェクトについてのプレイヤ操作の検出が継続している期間において、数値データの送信と対応するパラメータの更新とを、交互に連続的に実行するステップとをさらに実行させることが好ましい。
このような構成によれば、プレイヤから見れば、両ゲーム装置(100)の間で、プレイヤ操作(表示部に対するタッチ操作)を継続した時間に応じた数値データを送受信する(移動させる)ことができる。
また、ゲーム装置(100)は、他のゲーム装置(100)との間で人体通信を行なうための電気的な経路が形成されると、当該他のゲーム装置(100)との間で、対応するそれぞれの選択オブジェクトに対するプレイヤ操作の先後を比較する先後比較手段(42,S200〜S218;S200〜S258)をさらに含むことが好ましい。この場合において、通信制御手段(42)は、自装置における選択オブジェクトに対するプレイヤ操作が他のゲーム装置における対応の選択オブジェクトに対するプレイヤ操作より先になされた場合に、選択オブジェクトに関する情報を他のゲーム装置へ送信し(S26)、自装置における選択オブジェクトに対するプレイヤ操作が他のゲーム装置における対応の選択オブジェクトに対するプレイヤ操作より後になされた場合に、他のゲーム装置から送信される情報を受信する(S26)ことが好ましい。
同様に、ゲームプログラム(48a)は、他のゲーム装置(100)との間で人体通信を行なうための電気的な経路が形成されると、当該他のゲーム装置(100)との間で、対応するそれぞれの選択オブジェクトに対するプレイヤ操作の先後を比較するステップ(42,S200〜S218;S200〜S258)と、自装置における選択オブジェクトに対するプレイヤ操作が他のゲーム装置における対応の選択オブジェクトに対するプレイヤ操作より先になされた場合に、選択オブジェクトに関する情報を他のゲーム装置へ送信し(S26)、自装置における選択オブジェクトに対するプレイヤ操作が他のゲーム装置における対応の選択オブジェクトに対するプレイヤ操作より後になされた場合に、他のゲーム装置から送信される情報を受信するステップ(S26)とを実行させることが好ましい。
このような構成によれば、プレイヤが選択オブジェクトに関する情報を他の装置へ送信する(あげる)のか、あるいは他のゲーム装置から受信する(もらう)のかを入力する必要がなく、2つのゲーム装置(100)のそれぞれで表示されるゲームオブジェクトのうち、先にプレイヤ操作(タッチ操作)がなされた方のゲーム装置(100)から、後にプレイヤ操作(タッチ操作)がなされた方のゲーム装置(100)へ、ゲームオブジェクトに関する情報が送信されるので、プレイヤは、より直感的にゲームオブジェクトを送信したり(あげたり)、受信したり(もらったり)することができる。
また、通信部(56)は、表示部(14)に近接または組み込まれて配置され、人体通信を行なうための信号を送受信するアンテナ(204)を含むことが好ましい。このような構成によれば、プレイヤが表示部(14)に対するタッチ操作を行なった場合に、当該プレイヤの人体を介して、人体通信のための伝搬経路を確実に形成することができる。
また、ゲーム装置(100)の通信制御手段(42)は、自装置においてゲームオブジェクトとして選択されたキャラクターと、他のゲーム装置においてゲームオブジェクトとして選択されたキャラクターとを交換することが好ましい。
同様に、ゲームプログラム(48a)が実行する人体通信を行なうステップは、自装置においてゲームオブジェクトとして選択されたキャラクターと、他のゲーム装置においてゲームオブジェクトとして選択されたキャラクターとを交換するステップを含むことが好ましい。
また、ゲーム装置(100)の通信制御手段(42)は、自装置においてゲームオブジェクトとして選択されたキャラクターを、他のゲーム装置において選択された保存先に保存する。
同様に、ゲームプログラム(48a)が実行する人体通信を行なうステップは、自装置においてゲームオブジェクトとして選択されたキャラクターを、他のゲーム装置において選択された保存先に保存するステップを含むことが好ましい。
また、ゲーム装置(100)の通信制御手段(42)は、他のゲーム装置との間で人体通信が確立しており、かつ自装置および当該他のゲーム装置のそれぞれにおいて座標検出手段によるプレイヤ操作が検出されている場合に、当該他のゲーム装置との間で人体通信を行なうことが好ましい。
同様に、ゲームプログラム(48a)が実行する人体通信を行なうステップは、他のゲーム装置との間で人体通信が確立しており、かつ自装置および当該他のゲーム装置のそれぞれにおいて座標検出手段によるプレイヤ操作が検出されている場合に実行されることが好ましい。
この発明の別の局面に従えば、他のゲーム装置と通信可能なゲーム装置(100)を提供する。ゲーム装置(100)は、プレイヤによる画面に対する接触座標を検出するための座標検出手段(20)を含む表示部(14)と、表示部(14)に接触または近接した人体の一部を介して、他のゲーム装置(100)との間で人体通信を行なうための第1通信部(56)と、第1通信部(56)に比較してより高い伝送速度で他のゲーム装置と通信可能な第2通信部(66)と、ゲームオブジェクトを表示するための情報を記憶する記憶部(48;26)と、記憶部(48;26)に記憶された情報に基づいて、表示部(14)にゲームオブジェクトを表示する表示制御手段(42,52,54)と、座標検出手段(20)によって表示中のいずれかのゲームオブジェクトの選択が検出される(S120〜S124)と、当該選択オブジェクトに関する情報の送信、および他のゲーム装置から送信される情報の受信の少なくとも一方を実行するための条件設定を人体通信によって行なう第1通信制御手段(42,SQ22a,SQ22b,SQ70,SQ72)と、第1通信制御手段による条件設定に従って、第2通信部(66)を用いて、選択オブジェクトに関する情報の送信(SQ24a,SQ24b)、および他のゲーム装置から送信される情報の受信(SQ26a,SQ26b)の少なくとも一方を実行する第2通信制御手段(42)とを含む。
この発明の類似した局面に従えば、演算処理部(42)と、表示部(14)と、他のゲーム装置との間で人体通信を行なうための通信部(56)とを備えたゲーム装置(100)によって実行されるゲームプログラム(48a)を提供する。ゲームプログラム(48a)は、演算処理部(42)に、ゲームオブジェクトを表示するための情報に基づいて、表示部にゲームオブジェクトを表示するステップ(S6)と、プレイヤ操作による表示部(14)に表示中のゲームオブジェクトについての選択を受付けるステップ(S120〜S124)と、当該選択オブジェクトに関する情報の送信、および他のゲーム装置から送信される情報の受信の少なくとも一方を実行するための条件設定を、表示部に接触または近接した人体の一部を介した人体通信によって行なうステップ(SQ22a,SQ22b,SQ70,SQ72)と、条件設定に従って、第2通信部を用いて、選択オブジェクトに関する情報の送信(SQ24a,SQ24b)、および他のゲーム装置から送信される情報の受信(SQ26a,SQ26b)の少なくとも一方を実行するステップとを実行させることが好ましい。
これらの発明によれば、上述したような、プレイヤから見れば、ゲーム装置(100)の間でゲームオブジェクトを交換する際には、所望するゲームオブジェクトを直感的に選択(タッチ操作)するだけでよく、これにより、ゲーム進行の自由度を低下させることなく、プレイヤ同士のコミュニケーションが促進されるとともに、ゲーム展開のバリエーションを広げることもできるといった効果に加えて、より短時間で選択オブジェクトに関する情報の送信または受信を行なうことができる。
また、ゲーム装置(100)は、他のゲーム装置(100)との間の第1通信部(56)での人体通信の状態を判断する通信状態判断手段をさらに含むことが好ましい。この場合には、第2通信制御手段(42)は、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置から送信される情報の受信完了前に、人体通信が途切れたと判断される(S168)と、実行中の送信または受信を中止する(S162,S164)。
同様に、ゲームプログラム(48a)は、他のゲーム装置(100)との間の第1通信部(56)での人体通信の状態を判断するステップ(S168)と、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置から送信される情報の受信完了前に、人体通信が途切れたと判断されると、実行中の送信または受信を中止するステップ(S162,S164)とをさらに実行させることが好ましい。
このような構成によれば、プレイヤ操作(表示部に対するタッチ操作)が外れたような場合に、人体通信のエラー発生を検出して、適切な終了処理を行なうことができる。
また、ゲーム装置(100)は、選択オブジェクトに関する情報を他のゲーム装置(100)へ送信する前に、選択オブジェクトに関する情報のデータ量を判断するデータ量判断手段(S196)をさらに含んでいてもよい。この場合には、第1通信制御手段(42)は、選択オブジェクトに関する情報が所定のデータ量より小さいと判断された場合に、第2通信部(66)に代わって、人体通信によって、選択オブジェクトに関する情報を送信する(S134)。
同様に、ゲームプログラム(48a)は、選択オブジェクトに関する情報を他のゲームプログラムへ送信する前に、選択オブジェクトに関する情報のデータ量を判断するステップ(S196)と、選択オブジェクトに関する情報が所定のデータ量より小さいと判断された場合に、第2通信部に代わって、人体通信によって、選択オブジェクトに関する情報を送信するステップ(S134)とをさらに実行させることが好ましい。
このような構成によれば、選択オブジェクトに関する情報が相対的に小さい場合には、無線通信を用いることなく人体通信のみで送信される。すなわち、無線通信の確立手順に要する時間に比較して、人体通信のみで選択オブジェクトに関する情報を送信に要する時間が短い場合には、全体的な処理時間を短縮できる。
また、第1通信制御手段(42)が他のゲーム装置(100)との間で秘匿通信を行なうための鍵情報を送信(SQ70)し、第2通信制御手段(42)が第1通信制御手段によって送信された鍵情報を用いて秘匿通信(SQ24a,SQ24b,SQ26a,SQ26b)を実行することが好ましい。
同様に、ゲームプログラム(48a)は、他のゲーム装置との間で秘匿通信を行なうための鍵情報を人体通信を用いて送信するステップ(SQ70)と、送信された鍵情報を用いて、他のゲーム装置との間で第2通信部による秘匿通信を実行するステップ(SQ24a,SQ24b,SQ26a,SQ26b)とをさらに実行させることが好ましい。
このような構成によれば、複数のゲーム装置(100)が近接している場合であっても、人体通信を確立した特定のゲーム装置(100)との間で選択的にデータ通信を行なうことができる。
この発明のさらに別の局面に従えば、他のゲーム装置と通信可能なゲーム装置(100)を提供する。ゲーム装置(100)は、プレイヤによる画面に対する接触座標を検出するための座標検出手段(20)を含む表示部(14)と、表示部(14)に接触または近接した人体の一部を介して、他のゲーム装置(100)との間で人体通信を行なうための第1通信部(56)と、第1通信部(56)に比較してより高い伝送速度で他のゲーム装置と通信可能な第2通信部(66)と、ゲームオブジェクトを表示するための情報を記憶する記憶部(48;26)と、記憶部(48;26)に記憶された情報に基づいて、表示部(14)にゲームオブジェクトを表示する表示制御手段(42,52,54)と、プレイヤ操作に従って、いずれかのゲームオブジェクトに関する情報の他のゲーム装置への送信、および他のゲーム装置から送信される情報の受信の少なくとも一方を実行するための条件設定を、第2通信部を用いて行なう第1通信制御手段(SQ2A〜SQ22a,SQ22b)と、条件設定完了後、他のゲーム装置との間で人体通信を行なうための電気的な経路が形成されると、人体通信によって、選択されたゲームオブジェクトに関する情報の送信(SQ24a,SQ24b)、および他のゲーム装置から送信される情報の受信(SQ26a,SQ26b)の少なくとも一方を実行する第2通信制御手段(42)とを含む。
この発明の類似した局面に従えば、演算処理部(42)と、表示部(14)と、他のゲーム装置との間で人体通信を行なうための第1通信部(56)と、第1通信部に比較してより高い伝送速度で他のゲーム装置と通信可能な第2通信部とを備えたゲーム装置(100)によって実行されるゲームプログラム(48a)を提供する。ゲームプログラム(48a)は、演算処理部(42)に、ゲームオブジェクトを表示するための情報に基づいて、表示部にゲームオブジェクトを表示するステップ(S6)と、プレイヤ操作による表示部に表示中のゲームオブジェクトについての選択を受付けるステップ(S120〜S124)と、当該選択オブジェクトに関する情報の送信、および他のゲーム装置から送信される情報の受信の少なくとも一方を実行するための条件設定を、第2通信部を用いて行なうステップ(SQ2A〜SQ22a,SQ22b)と、条件設定完了後、他のゲーム装置との間で人体通信を行なうための電気的な経路が形成されると、人体通信によって、選択されたゲームオブジェクトに関する情報の送信(SQ24a,SQ24b)、および他のゲーム装置から送信される情報の受信(SQ26a,SQ26b)の少なくとも一方を実行するステップと実行させる。
これらの発明によれば、プレイヤから見れば、ゲーム装置(100)の間でゲームオブジェクトを交換する際には、所望するゲームオブジェクトを直感的に選択(タッチ操作)するだけでよく、これにより、ゲーム進行の自由度を低下させることなく、プレイヤ同士のコミュニケーションが促進されるとともに、ゲーム展開のバリエーションを広げることもできるといった効果を得ることができる。また、条件設定が行なわれた後、最終的に人体通信を用いて選択オブジェクトに関する情報が送受信されるので、無線通信で相手先を厳密に特定しなくとも、特定の相手先に必要な情報を確実に送信できる。
また、ゲーム装置(100)は、選択オブジェクトに関する情報の送信完了後、または他のゲーム装置から送信される情報の受信完了後に、記憶部(48;26)に記憶された対応する情報を更新する情報更新手段をさらに含むことが好ましい(42,S142,S150〜S154)をさらに含むことが好ましい。
同様に、ゲームプログラム(48a)は、選択オブジェクトに関する情報の送信完了後、または他のゲーム装置から送信される情報の受信完了後に、記憶部(48;26)に記憶された対応する情報を更新するステップ(S142,S150〜S154)をさらに実行させることが好ましい。
すなわち、送信完了または受信完了を待って、記憶部(48;26)に記憶された対応する情報(48c)が更新されるので、選択オブジェクトに関する情報の送信完了前または送信完了前に、何らかの通信エラーが発生した場合であっても、記憶部(48;26)に記憶された情報が乱されることがない。
この発明のさらに別の局面に従えば、他のゲーム装置と通信可能なゲーム装置(100)を提供する。ゲーム装置(100)は、プレイヤによる画面に対する接触座標を検出するための座標検出手段(20)を含む表示部(14)と、表示部(14)に接触または近接した人体の一部を介して、他のゲーム装置(100)との間で人体通信を行なうための第1通信部(56)と、第1通信部(56)に比較してより高い伝送速度で他のゲーム装置と通信可能な第2通信部(66)と、ゲームオブジェクトを表示するための情報を記憶する記憶部(48;26)と、記憶部(48;26)に記憶された情報に基づいて、表示部(14)にゲームオブジェクトを表示する表示制御手段(42,52,54)と、プレイヤ操作に従って、いずれかのゲームオブジェクトに関する情報の他のゲーム装置への送信、および他のゲーム装置から送信される情報の受信の少なくとも一方を実行するための条件設定(SQ2a〜SQ22a,SQ22b)を、第2通信部(66)を用いて行なう第1通信制御手段(42)と、条件設定完了後、第2通信部(66)を用いて、選択されたゲームオブジェクトに関する情報の送信(SQ24a,SQ24b)、および他のゲーム装置から送信される情報の受信(SQ26a,SQ26b)の少なくとも一方を実行する第2通信制御手段と、選択オブジェクトに関する情報の送信完了後、または他のゲーム装置から送信される情報の受信完了後に、他のゲーム装置との間で人体通信が確立されたか否かを判断する通信確立判断手段(42,SQ40a,SQ42a,SQ44a,SQ40b,SQ42b,SQ44b)と、他のゲーム装置との間で人体通信が確立されたと判断された場合に、記憶部に記憶された対応する情報を、送信または受信した情報に応じて更新する情報更新手段(42,SQ28a,SQ30a,SQ28b,SQ30b)とを含む。
この発明の類似した局面に従えば、演算処理部(42)と、表示部(14)と、他のゲーム装置との間で人体通信を行なうための第1通信部(56)と、第1通信部に比較してより高い伝送速度で他のゲーム装置と通信可能な第2通信部とを備えたゲーム装置(100)によって実行されるゲームプログラム(48a)を提供する。ゲームプログラム(48a)は、演算処理部(42)に、ゲームオブジェクトを表示するための情報に基づいて、表示部にゲームオブジェクトを表示するステップ(S6)と、プレイヤ操作による表示部に表示中のゲームオブジェクトについての選択を受付けるステップ(S120〜S124)と、プレイヤ操作に従って、いずれかのゲームオブジェクトに関する情報の他のゲーム装置への送信、および他のゲーム装置から送信される情報の受信の少なくとも一方を実行するための条件設定を、第2通信部を用いて行なうステップ(SQ2a〜SQ22a,SQ22b)と、条件設定完了後、第2通信部を用いて、選択されたゲームオブジェクトに関する情報の送信(SQ24a,SQ24b)、および他のゲーム装置から送信される情報の受信の少なくとも一方を実行するステップと、選択オブジェクトに関する情報の送信完了後、または他のゲーム装置から送信される情報の受信完了後に、他のゲーム装置との間で人体通信が確立されたか否かを判断するステップ(42,SQ40a,SQ42a,SQ44a,SQ40b,SQ42b,SQ44b)と、他のゲーム装置との間で人体通信が確立されたと判断された場合に、予め記憶された対応する情報を、送信または受信した情報に応じて更新するステップ(SQ28a,SQ30a,SQ28b,SQ30b)とを実行させる。
この発明によれば、プレイヤから見れば、ゲーム装置(100)の間でゲームオブジェクトを交換する際には、所望するゲームオブジェクトを直感的に選択(タッチ操作)するだけでよく、これにより、ゲーム進行の自由度を低下させることなく、プレイヤ同士のコミュニケーションが促進されるとともに、ゲーム展開のバリエーションを広げることもできるといった効果を得ることができる。また、条件設定が行なわれ、さらに選択オブジェクトに関する情報が送信された後、最終的に人体通信の確立の可否が判断されるので、無線通信で相手先を厳密に特定しなくとも、特定の相手先に必要な情報を確実に送信できる。
情報更新手段(42)は、他のゲーム装置との間で人体通信が確立されたとの判断に加えて、表示部の所定領域内に対するプレイヤ操作が検出された場合(S133)に、記憶部(48;26)に記憶された対応する情報を更新する(S152,S154)ことが好ましい。
同様に、ゲームプログラム(48a)は表示部の所定領域内に対するプレイヤ操作が検出されたか否かを判断するステップをさらに実行させ、更新するステップは、他のゲーム装置との間で人体通信が確立されたとの判断に加えて、表示部の所定領域内に対するプレイヤ操作が検出されたと判断された場合(S133)に、予め記憶された対応する情報を更新する(S152,S154)。
このような構成により、プレイヤが選択オブジェクトに関する情報に基づいて、記憶部に記憶された情報を更新することについての承認を得ることができる。すなわち、選択オブジェクトに関する情報の送受信がゲーム装置の内部的に実行されていたとしても、プレイヤから見れば、表示される画面を参照した上で、承認を行なうことで、はじめて当該情報による記憶部(48;26)に記憶された対応する情報の更新が実行されるため、プレイヤによる誤操作を低減できる。
この発明のさらに別の局面に従えば、他のゲーム装置と通信可能なゲーム装置(100)を提供する。ゲーム装置(100)は、プレイヤによる画面に対する接触座標を検出するための座標検出手段(20)を含む表示部(14)と、表示部(14)に接触または近接した人体の一部を介して、他のゲーム装置(100)との間で人体通信を行なうための通信部(56)と、ゲームオブジェクトを表示するための情報を記憶する記憶部(48;26)と、記憶部(48;26)に記憶された情報に基づいて、表示部(14)にゲームオブジェクトを表示する表示制御手段(42,52,54)と、他のゲーム装置との間で人体通信が確立されたか否かを判断する通信確立判断手段(42,SQ6B,SQ8B)とを含む。表示制御手段(42,52,54)は、他のゲーム装置との間で人体通信が確立されたと判断された場合に、いずれかのゲームオブジェクトに関する情報の他のゲーム装置への送信、および他のゲーム装置から送信される情報の受信の少なくとも一方に係る条件設定を受付けるための入力画面を表示する(SQ50a,SQ50b)。
この発明の類似した局面に従えば、演算処理部(42)と、表示部(14)と、他のゲーム装置との間で人体通信を行なうための通信部(56)とを備えたゲーム装置(100)によって実行されるゲームプログラム(48a)を提供する。ゲームプログラム(48a)は、演算処理部(42)に、ゲームオブジェクトを表示するための情報に基づいて、表示部にゲームオブジェクトを表示するステップ(S6)と、他のゲームプログラムとの間で人体通信が確立されたか否かを判断するステップと、他のゲームプログラムとの間で人体通信が確立されたと判断された場合に、いずれかのゲームオブジェクトに関する情報の他のゲームプログラムへの送信、および他のゲーム装置から送信される情報の受信の少なくとも一方に係る条件設定を受付けるための入力画面を表示するステップ(SQ50a,SQ50b)とを実行させる。
このような構成により、相手先のゲーム装置(100)との間で人体通信が確立されたことを条件として、オブジェクト交換等処理に係るメニューを提示することができる。すなわち、人体通信が確立して、選択オブジェクトに関連する情報を送信および受信することができる状態になった場合に、はじめていずれかの処理を選択するためのメニューをプレイヤに表示する。このようなタイミングでメニュー画面を表示させることで、人体通信が確立するまでの待ち時間などにより、プレイヤに対してストレスを与えることを回避できる。
また、入力画面に対するプレイヤ操作は、他のゲーム装置との間の人体通信が確立中に有効化されることが好ましい。これは、上述したように、人体通信が確立してデータの送信または受信が可能な状態でなければ、プレイヤからの入力を受付けても実行できず、プレイヤに無駄な操作を強いることになるからである。すなわち、プレイヤに対しては、入力された指示を実行可能な期間において、当該指示を受付けるためのメニューを表示することで、プレイヤに対してストレスを与えることを回避できる。
また、通信部(56)は、表示部(14)に近接または組み込まれて配置されたアンテナ(204)から人体通信を確立するための信号を周期的に送信し、通信確立判断手段(42,SQ6B,SQ8B)は、人体通信を確立するための信号に応じて発せられる応答を通信部(56)が他のゲーム装置から受信した場合に、他のゲーム装置との間で人体通信が確立されたと判断してもよい。
同様に、ゲームプログラム(48a)は、ゲームプログラム表示部に近接または組み込まれて配置されたアンテナから人体通信を確立するための信号を周期的に送信するステップをさらに実行させ、人体通信が確立されたか否かを判断するステップ(42,SQ6B,SQ8B)は、人体通信を確立するための信号に応じて発せられる応答を通信部が他のゲーム装置から受信した場合に、他のゲーム装置との間で人体通信が確立されたと判断してもよい。
これは、相手先のゲーム装置100がどのようなタイミングで人体通信を確立するための信号を送信しているかを予め予測できないためである。このような構成によれば、互いに独立して動作する複数のゲーム装置(100)の間でも、確実に通信を確立することができる。
また、通信部(56)は、座標検出手段(20)によって表示部に対するプレイヤ操作が検出された場合に、人体通信を確立するための信号の送信を開始(SQ1a,SQ1b)してもよい。同様に、ゲームプログラム(48a)は、表示部に対するプレイヤ操作が検出された場合に、人体通信を確立するための信号の送信を開始するステップ(SQ1a,SQ1b)をさらに実行させてもよい。このような構成によれば、プレイヤによる人体通信の実行の可能性がある場合に限って、通信部(56)を活性化できるので、消費電力を適正化できる。
また、座標検出手段がプレイヤ操作に伴う接触面積を示す検出結果を出力し、通信部(56)が座標検出手段からの検出結果が所定範囲の接触面積に応じた値である場合に、アンテナから人体通信を確立するための信号の送信を開始(SQ1a,SQ1b)するようにしてもよい。同様に、ゲームプログラム(48a)は、プレイヤ操作に伴う接触面積を示す検出結果を取得するステップと、検出結果が所定範囲の接触面積に応じた値である場合に、アンテナから人体通信を確立するための信号の送信を開始するステップ(SQ1a,SQ1b)とをさらに実行させてもよい。これは、非導電性のスタイラスペンなどを用いてプレイヤ操作がなされた場合には、プレイヤの人体を介した人体通信を行なうことはできないと予想されるので、このような場合には、人体通信を確立するための信号の送信を開始せずに、不要な消費電力を低減できる。
この発明のさらに別の局面に従えば、他のゲーム装置と通信可能なゲーム装置(100)を提供する。ゲーム装置(100)は、プレイヤによる画面に対する接触座標を検出するための座標検出手段(20)を含む表示部(14)と、表示部(14)に接触または近接した人体の一部を介して、他のゲーム装置(100)との間で人体通信を行なうための通信部(56)と、ゲームオブジェクトを表示するための情報を記憶する記憶部(48;26)と、記憶部(48;26)に記憶された情報に基づいて、表示部(14)にゲームオブジェクトを表示する表示制御手段(42,52,54)と、他のゲーム装置との間で人体通信が確立されたか否かを判断する通信確立判断手段(42,SQ6B,SQ8B)と、他のゲーム装置との間で人体通信が確立されたと判断された場合に、他のゲーム装置との間で情報を交換するための交換モードを有効化する(SQ50a,SQ50b)モード変更手段とを含む。
この発明の類似した局面に従えば、演算処理部(42)と、表示部(14)と、他のゲーム装置との間で人体通信を行なうための通信部(56)とを備えたゲーム装置(100)によって実行されるゲームプログラム(48a)を提供する。ゲームプログラム(48a)は、演算処理部(42)に、ゲームオブジェクトを表示するための情報に基づいて、表示部にゲームオブジェクトを表示するステップ(S6)と、他のゲームプログラムとの間で人体通信が確立されたか否かを判断するステップ(SQ6B,SQ8B)と、他のゲーム装置との間で人体通信が確立されたと判断された場合に、他のゲームプログラムとの間で情報を交換するための交換モードを有効化するステップ(SQ50a,SQ50b)とを実行させる。
これらの発明によれば、相手先のゲーム装置(100)との間で人体通信が確立されたことを条件として、他のゲーム装置との間で情報を交換するための交換モードを有効化できる。すなわち、人体通信が確立して、選択オブジェクトに関連する情報を送信および受信することができる状態になった場合に、はじめて情報を交換するための交換モードが有効化される。このようなタイミングで交換モードを有効化することで、人体通信が確立するまでの待ち時間などにより、プレイヤに対してストレスを与えることを回避できる。
また、入力画面に対するプレイヤ操作は、他のゲーム装置との間の人体通信が確立中に有効化されることが好ましい。これは、上述したように、人体通信が確立してデータの送信または受信が可能な状態でなければ、プレイヤからの入力を受付けても実行できず、プレイヤに無駄な操作を強いることになるからである。すなわち、プレイヤに対しては、入力された指示を実行可能な期間において、当該指示を受付けるためのメニューを表示することで、プレイヤに対してストレスを与えることを回避できる。
また、通信部(56)は、表示部(14)に近接または組み込まれて配置されたアンテナ(204)から人体通信を確立するための信号を周期的に送信し、通信確立判断手段(42,SQ6B,SQ8B)は、人体通信を確立するための信号に応じて発せられる応答を通信部(56)が他のゲーム装置から受信した場合に、他のゲーム装置との間で人体通信が確立されたと判断してもよい。
同様に、ゲームプログラム(48a)は、表示部(14)に近接または組み込まれて配置されたアンテナから人体通信を確立するための信号を周期的に送信するステップをさらに実行させ、人体通信が確立されたか否かを判断するステップは、人体通信を確立するための信号に応じて発せられる応答を通信部が他のゲームプログラムから受信した場合に、他のゲームプログラムとの間で人体通信が確立されたと判断するステップ(42,SQ6B,SQ8B)を含んでもよい。
これは、相手先のゲーム装置100がどのようなタイミングで人体通信を確立するための信号を送信しているかを予め予測できないためである。このような構成によれば、互いに独立して動作する複数のゲーム装置(100)の間でも、確実に通信を確立することができる。
また、通信部(56)は、座標検出手段(20)によって表示部に対するプレイヤ操作が検出された場合に、人体通信を確立するための信号の送信を開始(SQ1a,SQ1b)してもよい。同様に、ゲームプログラム(48a)は、表示部(56)に対するプレイヤ操作が検出された場合に、人体通信を確立するための信号の送信を開始するステップ(SQ1a,SQ1b)をさらに実行させてもよい。
このような構成によれば、プレイヤによる人体通信の実行の可能性がある場合に限って、通信部(56)を活性化できるので、消費電力を適正化できる。
また、座標検出手段がプレイヤ操作に伴う接触面積を示す検出結果を出力し、通信部(56)が座標検出手段からの検出結果が所定範囲の接触面積に応じた値である場合に、アンテナから人体通信を確立するための信号の送信を開始(SQ1a,SQ1b)するようにしてもよい。同様に、ゲームプログラム(48a)は、プレイヤ操作に伴う接触面積を示す検出結果を取得するステップと、検出結果が所定範囲の接触面積に応じた値である場合に、アンテナから人体通信を確立するための信号の送信を開始するステップ(SQ1a,SQ1b)とをさらに実行させてもよい。
これは、非導電性のスタイラスペンなどを用いてプレイヤ操作がなされた場合には、プレイヤの人体を介した人体通信を行なうことはできないと予想されるので、このような場合には、人体通信を確立するための信号の送信を開始せずに、不要な消費電力を低減できる。
この発明のさらに別の局面に従えば、上記ゲーム装置と同様の構成を含む、他の情報処理装置と通信可能な情報処理装置(100)を提供する。
この発明によれば、プレイヤが通信に必要な設定を入力することなく、直感的に任意のゲーム装置との間で通信を行なうことができる。
この発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
[実施の形態1]
本発明に係るゲーム装置および情報処理装置の代表例として、以下では携帯型のゲーム装置100について説明する。なお、本発明に係るゲーム装置および情報処理装置は、携帯型のものに限定されることはなく、据置型のゲーム装置に適用することが可能である。
<ゲーム装置の外観>
図1は、この発明の実施の形態1に従う携帯型のゲーム装置100の外観図(使用時)である。図2は、この発明の実施の形態1に従う携帯型のゲーム装置100の外観図(収納時)である。
図1および図2を参照して、本実施の形態に従う携帯型のゲーム装置100(以下、単に「ゲーム装置100」とも称す。)は、後述する各種の部品を格納するハウジング16を含む。ハウジング16は、上側ハウジング16aと下側ハウジング16bとからなる。なお、以下の説明において、「上」「下」「左」「右」といった表現は、説明の便宜上のものであり、本実施の形態に従うゲーム装置100を図1および図2に示すように配置した場合の紙面上における位置関係に基づいて説明する。なお、本実施の形態に従うゲーム装置100は、その各部の名称にとらわれることなく、自在に回転して、たとえば図1に示す状態から90°回転した状態でゲームをプレイすることも可能である。
上側ハウジング16aおよび下側ハウジング16bは、それぞれ上側ハウジング16aの下辺(下端)と下側ハウジング16bの上辺(上端)の一部との間でヒンジ16Hを介して互いに回動可能に連結される。ヒンジ16Hは、図2に示すように、第1連結部材16H1と、2つの第2連結部材16H2とからなる。第1連結部材16H1は、上側ハウジング16aに固定的に設けられる。一方、2つの第2連結部材16H2は、第1連結部材16H1とそれぞれ相対的に回転可能に接続され、かつ下側ハウジング16bの両端にそれぞれ固定的に設けられる。
ゲーム装置100は、第1液晶表示器(Liquid Crystal Display)12(以下、単に「LCD12」とも称す。)と、第2液晶表示器14(以下、単に「LCD14」とも称す。)とをさらに含む。LCD12およびLCD14は、それぞれ所定の配置位置となるようにハウジング16に収納される。より具体的には、LCD12は、上側ハウジング16aに収納され、LCD14は、下側ハウジング16bに収納される。このように配置することで、図1に示すように上側ハウジング16aと下側ハウジング16bとを開いた場合に、LCD12およびLCD14は、縦方向(上下方向)に並ぶように近接して配置される。すなわち、図1に示す主軸方向xに沿って、LCD14およびLCD12の順序で配置される。なお、本実施の形態では、表示部の代表例として、液晶ディスプレイを用いる構成について例示するが、代替的に、有機EL(Electro-Luminescence)ディスプレイやプラズマディスプレイなどを用いてもよい。
図1に示すように、上側ハウジング16aは、LCD12の平面形状よりも大きな平面形状を有し、LCD12の表示面が露出されるように一方の主面に開口部が形成される。また、下側ハウジング16bは、その平面形状が上側ハウジング16aと同程度に形成されるとともに、LCD14の表示面が露出されるように横方向の略中央部に開口部が形成される。
以上のような構成を採用することで、たとえばゲームをプレイしない場合には、図2に示すように、LCD12の表示面とLCD14の表示面とが対面するように、上側ハウジング16aを回動させて折りたたんでおけば、LCD12およびLCD14の表示面に傷がつくなどの破損を防止することができる。また、不使用時にゲーム装置100をコンパクト化することができる。なお、上側ハウジング16aと下側ハウジング16bとを回動可能に連結することなく、両者を一体化した構成を採用してもよい。
上側ハウジング16aには、LCD12を挟んで左右対称に音抜き孔22aおよび22bが形成される。また、上側ハウジング16aに固定的に設けられた第1連結部材16H1には、マイクロフォン34が配置される。
ハウジング16には、複数の操作スイッチが配置される。より具体的には、方向指示スイッチ(十字スイッチ)18aと、スタートスイッチ18bと、セレクトスイッチ18cと、動作スイッチ(Aボタン)18dと、動作スイッチ(Bボタン)18eと、動作スイッチ(Xボタン)18fと、動作スイッチ(Yボタン)18gと、電源スイッチ18hと、動作スイッチ(Lボタン:左押しボタン)18Lと、動作スイッチ(Rボタン:右押しボタン)18Rとが、ハウジング16に配置される。以下では、これらの操作スイッチを「操作スイッチ18」とも総称する。
方向指示スイッチ18aは、下側ハウジング16bの一方主面において、LCD14の左側に配置される。より具体的には、方向指示スイッチ18aは、ディジタルジョイスティックとして機能し、プレイヤが4つの押圧部の1つを操作することによって、仮想ゲーム空間で操作可能なキャラクター(または、ゲームオブジェクト)の移動方向や、カーソルの移動方向などの指示操作に用いられる。
スタートスイッチ18bは、下側ハウジング16bの一方主面において、LCD14の右側に配置される。より具体的には、スタートスイッチ18bは、プッシュボタンで構成され、ゲームの開始(再開)や一時停止(Pause)といった指示操作に用いられる。
セレクトスイッチ18cは、下側ハウジング16bの一方主面において、スタートスイッチ18bと近接して、LCD14の右側に配置される。より具体的には、セレクトスイッチ18cは、プッシュボタンで構成され、ゲームモードの選択などの指示操作に用いられる。
動作スイッチ(Aボタン)18dと、動作スイッチ(Bボタン)18eと、動作スイッチ(Xボタン)18fと、動作スイッチ(Yボタン)18gとは、下側ハウジング16bの一方主面において、それぞれがひし形の各頂点の位置に対応するように、LCD14の右側に配置される。
動作スイッチ18d(Aボタン)は、プッシュボタンで構成され、1自由度の動作、すなわち、仮想ゲーム空間のキャラクターに打つ(パンチ)、投げる、つかむ(取得)、乗る、ジャンプするなどの任意のアクションを指示することができる。たとえば、アクションゲームにおいては、キャラクターに対して、ジャンプ、パンチ、武器を動かすなどの動作を指示することができる。また、ロールプレイングゲーム(RPG:Roll Playing Game)やシミュレーションRPGにおいては、キャラクターに対して、アイテムの取得、武器/コマンドの選択および決定などを指示することができる。
動作スイッチ18e(Bボタン)は、プッシュボタンで構成され、セレクトスイッチ18cで選択したゲームモードの変更や動作スイッチ18d(Aボタン)で決定したアクションの取り消しなどのために用いられる。
動作スイッチ18e(Xボタン)および動作スイッチ18f(Yボタン)は、いずれもプッシュボタンで構成され、主として、動作スイッチ18d(Aボタン)および動作スイッチ18e(Bボタン)のみでは、ゲーム進行ができないときに補助的な操作ボタンとして用いられる。そのため、動作スイッチ18e(Xボタン)および動作スイッチ18f(Yボタン)は、ゲーム中に必ずしも使用されるとは限らない。
電源スイッチ18hは、下側ハウジング16bの右側面に配置され、ゲーム装置100の電源をオン/オフするために用いられる。
動作スイッチ(Lボタン)18Lおよび動作スイッチ(Rボタン)18Rは、下側ハウジング16bの上端(天面)の一部において、上側ハウジング16aとの連結部を挟むように、それぞれ左側および右側に配置される。より具体的には、動作スイッチ(Lボタン)18Lおよび動作スイッチ(Rボタン)18Rは、いずれもプッシュボタンで構成され、それぞれ動作スイッチ18d(Aボタン)および動作スイッチ18e(Bボタン)と同様の操作に用いることができる。あるいは、動作スイッチ(Lボタン)18Lおよび動作スイッチ(Rボタン)18Rは、動作スイッチ18d(Aボタン)および動作スイッチ18e(Bボタン)の補助的な操作に用いられてもよい。
本実施の形態に従うゲーム装置100は、プレイヤによる画面に対する接触座標を検出するための座標検出手段としてのタッチパネルを含む。具体的には、LCD14の上面にタッチパネル20が装着される。このタッチパネルは、プレイヤがLCD14に表示されるキャラクターやアイテムなどを、自身の指やスタイラスペン(スティック)24で押圧したり撫でたり(触れたり)するといった操作(以下、このような操作を「タッチ操作」と総称する。)を行なうと、その操作されたLCD14の位置(座標位置)を検出して出力する。このようなタッチパネル20は、代表的に、抵抗膜方式、光学式(赤外線方式)、静電容量結合式といった種類のものを用いることができるが、本実施の形態に従うゲーム装置100では、抵抗膜方式のタッチパネルを採用した場合について例示する。
なお、本実施の形態に従うゲーム装置100では、その表示面の解像度が256dot×192dotであるLCD14(およびLCD12)を採用するものとする。この場合、タッチパネル20の検出精度は、このLCD14の解像度に対応して、256dot×192dotであることが好ましいが、それより高くてもよく、あるいは低くてもよい。
本実施の形態に従うゲーム装置100は、少なくとも1つの通信方式を用いて、他のゲーム装置と通信可能に構成される。具体的には、ゲーム装置100は、人体を信号伝搬媒体とする通信方式(以下、「人体通信」とも称す。)を用いて他のゲーム装置と通信を行なうための人体通信部56(図3)を含んでいる。そして、タッチパネル20は、この人体通信を行なうための信号(電磁波;以下「人体通信信号」とも称す。)を送受信するための電極部(アンテナ)としても機能するように構成される。そのため、プレイヤがタッチパネル20に対してタッチ操作を行なうと、タッチパネル20によってそのタッチ位置(座標位置)が検出されるとともに、当該プレイヤを介して、他のゲーム装置との間のデータ通信が可能となる。人体通信を行なうための構成および通信シーケンスなどの詳細については、後述する。
なお、人体通信信号は、人体と電気的に接続された導電体を伝搬するので、スタイラスペン24を導電性の材質で構成することで、プレイヤが自身の指でタッチパネル20にタッチ操作を行なった場合に加えて、そのようなスタイラスペン24を用いてタッチ操作を行なった場合においても、他のゲーム装置との間で人体通信を行なうことができる。そのため、本実施の形態に従うゲーム装置100では、導電性のスタイラスペン24を用いることが好ましい。
スタイラスペン24は、たとえば、下側ハウジング16bの右側面に設けられる収納部(収納穴)(図示せず)に収納することが可能であり、必要に応じて取り出される。
本実施の形態に従うゲーム装置100には、メモリカード(あるいは、ゲームカートリッジ)26が装着される。このメモリカード26には、ゲームプログラムや各種データが記憶される。ゲーム装置100は、このメモリカード26に記憶されたゲームプログラムを読み出して実行することで、本実施の形態に係るゲームおよび各種処理を提供する。すなわち、メモリカード26は、仮想ゲーム空間および仮想ゲーム空間内に表示されるキャラクターなどのゲームオブジェクト(以下、単に「オブジェクト」とも称す。)を表示するための情報を記憶する。このメモリーカード26に記憶されたゲームプログラムの内容によれば、ゲーム装置100上で「ゲーム」以外の各種の情報処理機能を提供することもできる。
メモリカード26は、下側ハウジング16bの裏面から上端(側面)にかけて設けられる挿入口(図示せず)から挿入され、着脱自在にされる。この挿入口の奥部には、メモリカード26の挿入方向先端部に設けられるコネクタと電気的に接続するためのコネクタ(図3)が設けられる。これにより、メモリカード26が挿入口に挿入されると、コネクタ同士が電気的および機械的に接続され、ゲーム装置100のCPUコア(図3)がメモリカード26にアクセス可能となる。
上側ハウジング16aの内部には、この上側ハウジング16aの音抜き孔22aおよび音抜き孔22bとそれぞれ対応する位置に、右スピーカおよび左スピーカ(図3)が設けられる(図示しない)。
さらに、本実施の形態に従うゲーム装置100では、下側ハウジング16bの裏面側に、電池収容ボックスが設けられるとともに、下側ハウジング16bの底面側に、音量調節つまみ、外部拡張コネクタ、イヤフォンジャックなどが設けられる(いずれも図示しない)。
<ゲーム装置の機能構成>
図3は、この発明の実施の形態1に従うゲーム装置100の機能ブロック図である。
図3を参照して、ゲーム装置100は、電子基板回路40を含み、この電子基板回路40には、演算処理部に相当するCPU(Central Processing Unit)コア42をはじめとする回路コンポーネントが実装される。より具体的には、電子基板回路40は、CPUコア42と、コネクタ46と、RAM(Random Access Memory)48と、I/F(Interface)回路50と、第1GPU(Graphic Processing Unit)52(以下、単に「GPU52」とも称す。)と、第2GPU54(以下、単に「GPU54」とも称す。)と、人体通信部56と、ブートROM(Read Only Memory)58と、LCDコントローラ60と、無線通信部66と、時計IC(Integrated Circuit)68とを含み、それぞれの回路コンポーネントは、バス44を介して互いに接続される。
コネクタ46には、上述したように、メモリカード26が着脱自在に接続される。メモリカード26は、ROM26aおよびRAM26bを含む。なお、ROM26aおよびRAM26bは、内部バス(図示しない)を介して互いに接続されるとともに、ゲーム装置100への装着時には、コネクタ46を介してバス44とも接続される。これにより、CPUコア42は、バス44およびコネクタ46を介して、メモリカード26のROM26aおよびRAM26bにアクセスすることができる。
ROM26aは、ゲーム装置100でゲームを実行するためのゲームプログラムや、キャラクター画像、背景画像、アイテム画像、メッセージ画像といった画像データや、効果音、BGM、何らかのアクションとともに発せられる擬制音のような音データなどを、不揮発的に記憶する。また、バックアップRAM26bは、ゲームの途中データや結果データを不揮発的に記憶する。より具体的には、RPGやシミュレーションRPGなどのように、ゲーム進行に伴って獲得されるキャラクターやアイテムといったオブジェクトの情報、および各キャラクターの生命力や経験値などが記憶される。なお、バックアップRAM26bは、ゲームの途中データを記憶するための記憶領域であるため、たとえばフラッシュROMのような、書き換え可能な不揮発性の記憶装置が採用される。
RAM48は、ワーキングメモリおよび/またはバッファメモリとして使用される。すなわち、RAM48には、CPUコア42での処理の実行に必要なゲームプログラム、画像データ、音データなどが、メモリカード26のROM26aから読出されて一時的に記憶される。また、CPUコア42は、実行するゲーム処理の進行に応じて、オブジェクト情報やフラグ情報などを、一時的にRAM48に記憶する。なお、RAM48に記憶されるゲームプログラム、画像データ、音データなどは、一括してあるいはゲーム進行などの必要に応じて、部分的かつ順次的にメモリカード26のROM26aから読み出される。
GPU52およびGPU54の各々は、CPUコア42と協働して表示制御手段を構成し、メモリカード26に記憶されたゲームプログラムをはじめとする各種データ(情報)に基づいて、それぞれLCD12およびLCD14に、各種オブジェクトを含む仮想ゲーム空間を表示する。
GPU52およびGPU54の各々は、代表的に、シングルチップASIC(Application Specific Integrated Circuit)で構成される。より具体的には、GPU52およびGPU54の各々は、CPUコア42によるゲームプログラムの実行に従って、CPUコア42からグラフィックスコマンド(作画命令)を受けると、当該グラフィックスコマンドに従って、ゲーム画像データを生成する。なお、CPUコア42からは、グラフィックスコマンドに加えて、ゲーム画像データの生成に必要な画像生成プログラム(ゲームプログラムの一部である)がGPU52およびGPU54の各々へ与えられる。但し、グラフィックスコマンドの実行に必要なデータ(ポリゴンやテクスチャなどの画像データ)については、グラフィックスコマンドに含まるのではなく、RAM48に記憶し、GPU52およびGPU54の各々がRAM48から必要に応じて読出すように構成することが好ましい。
電子基板回路40は、GPU52に接続された第1VRAM(Video Random Access Memory)62(以下、単に「VRMA62」とも称す。)と、GPU54に接続された第2VRAM64(以下、単に「VRMA64」とも称す。)とをさらに含む。VRAM62およびVRAM64は、それぞれLCD12およびLCD14の解像度に対応した大きさの記憶領域(本実施の形態においては、228×192ピクセル)を有しており、それぞれGPU52およびGPU54が生成したゲーム画像データを一時的に記憶する。
電子基板回路40は、VRAM62,64とLCD12,14との間に配置された、LCDコントローラ60を含む。LCDコントローラ60は、VRAM62,64に記憶されたゲーム画像データをLCD12,14へ選択的に出力する。より具体的には、LCDコントローラ60は、ゲーム画像データの出力先を示すフラグを記憶するレジスタ60aを含む。このレジスタ60aは、たとえば1ビットで構成され、CPUコア42の指示によって「0」または「1」のデータ値を記憶する。たとえば、このレジスタ60aのデータ値が「0」である場合には、LCDコントローラ60は、VRAM62に記憶されたゲーム画像データをLCD12へ出力するとともに、VRAM64に記憶されたゲーム画像データをLCD14へ出力する。一方、このレジスタ60aのデータ値が「1」である場合には、LCDコントローラ60は、VRAM62に記憶されたゲーム画像データをLCD14へ出力するとともに、VRAM64に記憶されたゲーム画像データをLCD12へ出力する。
I/F回路50には、タッチパネル20、右スピーカ30a、左スピーカ30b、操作スイッチ18、マイクロフォン34が接続される。
タッチパネル20は、検出した座標位置をI/F回路50を介してCPUコア42へ出力する。右スピーカ30aおよび左スピーカ30bは、RAM48から読み出された音データに基づいて生成されるBGM、効果音、擬制音などを音声出力する。また、操作スイッチ18がプレイヤによって操作されると、対応する操作信号(操作データ)がI/F回路50を介してCPUコア42へ入力される。さらに、マイクロフォン34から入力される音声(音声信号)は、I/F回路50でディジタルデータ(音声データ)に変換され、CPUコア42へ入力される。
時計IC68は、計時処理を行なう回路コンポーネントであり、計測した時刻はCPUコア42へ入力される。なお、時計IC68は、ゲーム装置100の電源状態にかかわらず、計時処理を継続可能である。
人体通信部56および無線通信部66は、主として他のゲーム装置との間でデータ通信を行なうためのユニットである。
無線通信部66は、相手先のゲーム装置へ送信するデータを無線信号に変調し、アンテナ(図示しない)から送信するとともに、当該アンテナ(図示しない)で受信した相手先のゲーム装置からの無線信号を受信データに復調する。無線通信部66は、たとえば、いわゆる無線LAN(Local Area Network)と称される、IEEE802.11規格に準拠した無線装置からなる。
一方、人体通信部56は、相手先のゲーム装置へ送信するデータを、人体通信信号に変調し、タッチパネル20の一部として組み込まれたアンテナから送信するとともに、人体を介して伝搬された信号を同じアンテナで受信して、受信データに復調する。
これらの人体通信部56および無線通信部66は、通信制御手段として機能するCPUコア42からの指令に従って送受信に係る動作を実行する。
なお、人体通信では、人体を電気的な信号の伝搬媒体として用いるので、生命活動に伴うノイズが生じ易い。そのため、一般的に、人体通信のデータ伝送速度は、無線通信に比較して低くなる。すなわち、無線通信部66によるデータ伝送速度は、人体通信部56によるデータ伝送速度に比較して高い。
<人体通信に係る構成>
人体通信と称される通信方式は、信号の伝搬形式に着目すると、プレイヤが大地に接地(グランド)することで形成される閉回路に電流を流す方式と、人体の誘電効果や空気中の静電結合などを利用して人体中に電磁波を伝搬させる方式とに大別できる。本実施の形態に従うゲーム装置100では、いずれの方法を採用してもよいが、一人のプレイヤを介して、他のゲーム装置との間で通信を行なうという観点からは、後者の方式を採用することが好ましい。以下の説明では、後者の方式を採用した場合の構成について例示する。
図4は、図1のIV−IV線に対応するLCD14およびタッチパネル20の模式断面図である。図5は、タッチパネル20を人体通信のアンテナとして用いた場合の構成を示す模式図である。
まず、図4を参照して、LCD14およびタッチパネル20の構造について説明する。LCD14は、ガラス層142と液晶層144とを含む。液晶層144は、下側に配置されたガラス層(図示しない)とガラス層142とに挟まれており、電界を印加することで配向方向が変化し、この配向方向の変化に伴って、下側に配置されたバックライト(図示しない)からの光に対する透過率を変化させる。この透過率の変化によって、その表面にゲーム画像が表示される。
LCD14の上面に装着されるタッチパネル20は、その表面に複数のドット210が行列状に形成された下側導電膜層202と、下側導電膜層202とスペーサ(絶縁物)208を介して対抗配置される上側導電膜層204と、保護膜層206とを含む。なお、ドット210は、タッチパネル20の検出精度と同数(たとえば、228個×192個)だけ設けられるが、図4では模式的に描いている。
プレイヤがタッチパネル20のいずれかの位置に対してタッチ操作を行なうと、上側導電膜層204のタッチ操作が行われた部分が押圧されてドット210を介して下側導電膜層202と電気的に接続される。ここで、上側導電膜層204と下側導電膜層202との間の電気抵抗値の大きさは、押圧された部分に応じて変化する。タッチパネル20は、このような導電膜層間における電気抵抗値の大きさに基づいて、プレイヤにより操作された座標位置を検出する。
次に、図5を参照して、人体通信部56は、送信データを変調して人体通信信号を発生する送信部56aと、相手先のゲーム装置から受信した人体通信信号を受信データに復調する受信部56bとを含む。本実施の形態に従うゲーム装置100では、一例として、
送信部56aおよび受信部56bがいずれも上側導電膜層204と電気的に接続される。上述したように、上側導電膜層204はその名の通り導電性をもつので、人体通信信号を送受信するアンテナとしても利用することができる。すなわち、上側導電膜層204は、LCD14に近接または組み込まれて配置され、人体通信を行なうための信号を送受信するためのアンテナに相当する。
なお、タッチパネル20では、下側導電膜層202の正側電極202aと負側電極202bとの間に所定の直流電圧を印加しておくとともに、上側導電膜層204の正側電極204aと負側電極204bとの間に所定の直流電圧を印加しておくことで、タッチ操作が行われたときの電気抵抗値が検出される。一方、人体通信信号としては、比較的高周波の交流信号が用いられる。このように両者は、周波数領域において分離可能であるので、タッチパネル20でのタッチ操作された座標位置の検出を妨害することなく、上側導電膜層204を人体通信用のアンテナとして用いることができる。
上述のように、タッチパネル20に人体通信用のアンテナを組み込むことで、プレイヤがLCD14に表示されるゲームキャラクターなどのオブジェクトを選択(タッチ操作)した場合に、同時に人体通信のための伝搬経路の一端が形成されることになる。すなわち、人体通信部56は、表示部であるLCD14に接触または近接したプレイヤの人体の一部を介して、他のゲーム装置との間で人体通信を行なう。
なお、人体通信では、人体がアンテナに接近して伝搬経路が形成された場合に、信号が流れればよいので、空気を伝搬媒体とする無線信号に比較して、その消費電力を小さくできる。すなわち、無線通信部66における消費電力は、人体通信部56における消費電力に比較して大きい。これは、人体通信では、空気中を伝搬可能な電力をもつ電磁波を発生する必要はなく、空気中に比較して導電率の高い人体を伝搬できる程度の電力をもつ電磁波を発生するだけでよいので、消費電力を低減することができる。
なお、図4および図5では、抵抗膜方式のタッチパネルの一部をアンテナとして用いる構成について例示したが、タッチパネル20とは別の透明な導電膜層をLCD14上に積層し、それをアンテナとしてもよい。あるいは、LCD14の周囲にループ状の電線を埋め込んでアンテナとしてもよい。要するに、プレイヤがLCD14に接触または近接した際に、その人体を介して他のゲーム装置との間で人体通信が可能となる構成である限り、いずれの位置および態様でアンテナを設けてもよい。
<人体通信を利用したゲーム処理例>
本実施の形態に従うゲーム装置100では、プレイヤがLCD14に表示されるいずれかのオブジェクトにタッチ操作を行なうだけで、他のゲーム装置100との間で人体通信によるデータの送受信を行なうことができる。
図6は、この発明の実施の形態1に従うゲーム装置100の間で人体通信を用いたゲームをプレイするプレイヤの操作態様の一例を示す図である。
図6を参照して、たとえば、2つのゲーム装置100(説明の便宜上、図6では符号「100−1」および「100−2」を用いて区別している。)の各々で、実質的に同じゲームプログラム(代表的には、RPGやシミュレーションRPG)が実行されているものとする。また、本実施の形態に係るゲームプログラムでは、ゲーム進行に伴って様々なキャラクターやアイテムを獲得できるものとする。本明細書では、仮想ゲーム空間内に表示されるキャラクター、アイテム、ボタン、メッセージなどを「オブジェクト」と総称する。なお、「オブジェクト」との用語には、画面表示される画像、および当該画像を表示するための画像データやパラメータなどを含む。
ゲーム進行において、獲得済のキャラクターやアイテム(獲得済のオブジェクト)をプレイヤ同士で交換したり、一方のプレイヤが他方のプレイヤへあげたりするような処理が提供されると、プレイヤ同士のコミュニケーションが促進されるとともに、ゲーム展開のバリエーションも広がる。
本実施の形態に従うゲーム装置100は、このようなプレイヤ同士でオブジェクトを交換したりするようなゲーム処理を直感的に行なうことを提供するものである。なお、本明細書において、ゲーム装置100の間でオブジェクト(あるいは、オブジェクトデータ)を交換する処理、およびいずれかのゲーム装置100から他のゲーム装置100へオブジェクト(あるいは、オブジェクトデータ)を移動させる処理を総称して「オブジェクト交換等処理」とも称する。
より具体的な一例として、図6に示すように、プレイヤがゲーム装置100−1のLCD14に表示される対象のオブジェクト(図示しない)を左手で選択(タッチ操作)するとともに、ゲーム装置100−2のLCD14に表示される対象のオブジェクト(図示しない)を右手で選択(タッチ操作)することで、ゲーム装置100−1とゲーム装置100−2との間では人体通信が可能となる。この人体通信によって、ゲーム装置100−1とゲーム装置100−2との間で、オブジェクト交換等処理が実行される。このように、プレイヤは、2つのゲーム装置100の間での通信に必要な設定などを意識することなく、直感的に、獲得済のキャラクターを相互に交換したり、他のプレイヤにあげたりすることができる。
(1)メニュー
図7および図8を参照して、本実施の形態に従うゲームプレイ中に表示されるオブジェクト交換等処理を開始するためのメニューについて説明する。
図7は、この発明の実施の形態1に従うゲーム装置100のLCD14で表示されるゲームシーンの一形態を示す図である。図8は、図7に示すゲームシーンにおいてオブジェクト交換等処理のメニューが表示された一形態を示す図である。
図7に示すようなゲーム進行中に、プレイヤがタッチパネル20に対するタッチ操作、あるいは動作スイッチ18e(Bボタン)などの押下を行なうことで、ゲーム進行上の所定条件が満たされる場合には、図8に示すようなメニューMSS10が表示される。図8に示すようなメニューMSS10には、「交換する」、「あげる」、「もらう」の3つの項目が選択可能に配置される。これらのうち、「交換する」では、自装置で獲得しているオブジェクトを相手先のゲーム装置のプレイヤが獲得しているオブジェクトと交換する処理が選択される。「あげる」では、自装置で獲得しているオブジェクトを相手先のゲーム装置のプレイヤへ移動する処理が選択される。「もらう」では、相手先のゲーム装置のプレイヤが獲得しているオブジェクトを自装置へ移動する処理が選択される。
(2)交換処理
図9および図10は、図8にメニューのうち「交換する」が選択された後のゲームシーンの一形態を示す図である。
図9に示すように、ゲーム装置100−1のLCD14には、ゲーム装置100−1のプレイヤが獲得済のキャラクターとしての3つのオブジェクトOBJ1,OBJ2,OBJ3が表示される。
オブジェクトOBJ1,OBJ2,OBJ3の各々には、その下部に名称(図9では、「AAA」,「BBB」,「CCC」)が表示される。また、ゲーム装置100−1のLCD14には、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−2)のプレイヤ名「XXX」および「あげるオブジェクトをタッチしてください」といったメッセージMSS12が表示される。
一方、図10に示すように、ゲーム装置100−2のLCD14には、ゲーム装置100−2のプレイヤが獲得済のキャラクターとしての1つのオブジェクトOBJ4がその名称(「DDD」)とともに表示される。さらに、ゲーム装置100−2のLCD14には、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−1)のプレイヤ名「YYY」および「あげるオブジェクトをタッチしてください」といったメッセージMSS14が表示される。
ここで、一人のプレイヤが、ゲーム装置100−1においてオブジェクトOBJ3(図9)を選択(タッチ操作)するとともに、ゲーム装置100−2においてオブジェクトOBJ4(図10)を選択(タッチ操作)すると、後述する通信シーケンスに従って、両ゲーム装置100の間で、選択されたオブジェクト情報が交換される。すなわち、プレイヤを介した人体通信によって、ゲーム装置100−1で選択されたオブジェクトに関する情報がゲーム装置100−2へ送信されるとともに、ゲーム装置100−2で選択されたオブジェクトに関する情報がゲーム装置100−1へ送信される。
なお、ゲーム装置100−1において選択されたオブジェクトに関する情報は、当該情報のゲーム装置100−1における送信完了後、あるいはゲーム装置100−2での受信完了後に、ゲーム装置100−1のRAM48(あるいは、メモリカード26のRAM26b)から削除される。同様に、ゲーム装置100−2において選択されたオブジェクトに関する情報は、当該情報のゲーム装置100−2における送信完了後、あるいはゲーム装置100−1での受信完了後に、ゲーム装置100−2のRAM48(あるいは、メモリカード26のRAM26b)から削除される。
そして、ゲーム装置100−1および100−2のLCD14の表示は、それぞれ図11および図12のように変化する。
図11は、図9に示すゲームシーンにおいて交換処理が完了した後のゲームシーンの一形態を示す図である。図12は、図10に示すゲームシーンにおいて交換処理が完了した後のゲームシーンの一形態を示す図である。
上述したような交換処理の実行により、図11に示すように、ゲーム装置100−1のLCD14には、予め獲得していた2つのオブジェクトOBJ1およびOBJ2に加えて、ゲーム装置100−2と交換して獲得したオブジェクトOBJ4がその名称(「DDD」)とともに表示される。さらに、ゲーム装置100−1のLCD14には、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−2)のプレイヤ名「XXX」および「オブジェクトDDDとオブジェクトCCCとを交換しました」からなるメッセージMSS16が表示される。
同様に、図12に示すように、ゲーム装置100−2のLCD14には、ゲーム装置100−1と交換して獲得したオブジェクトOBJ3がその名称(「CCC」)とともに表示される。さらに、ゲーム装置100−2のLCD14には、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−1)のプレイヤ名「YYY」および「オブジェクトCCCとオブジェクトDDDとを交換しました」からなるメッセージMSS18が表示される。
(3)あげる/もらう処理
図13は、図8にメニューのうち「もらう」が選択された後のゲームシーンの一形態を示す図である。また、ゲーム装置100−1では、図8にメニューのうち「あげる」が選択されているものとする。
図13に示すように、ゲーム装置100−2のLCD14には、ゲーム装置100−2のプレイヤがオブジェクトを受取るためのフォルダとしてのオブジェクトOBJ11,OBJ12,OBJ13が表示される。このフォルダは、キャラクターやアイテムなどの保存先に対応付けられている。また、ゲーム装置100−2のLCD14には、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−1)のプレイヤ名「YYY」および「あげる側のゲーム機であげるオブジェクトをタッチし、もらう側のゲーム機でフォルダをタッチしてください」からなるメッセージMSS20が表示される。
一方、ゲーム装置100−1のLCD14には、図9に示すようなオブジェクトOBJ1,OBJ2,OBJ3が表示されるとともに、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−2)のプレイヤ名「XXX」および「あげる側のゲーム機であげるオブジェクトをタッチし、もらう側のゲーム機でフォルダをタッチしてください」からなるメッセージが表示される(図示しない)。
ここで、一人のプレイヤが、ゲーム装置100−1においてキャラクターOBJ3(図9と同様)を選択(タッチ操作)するとともに、ゲーム装置100−2においてフォルダOBJ11(図13)を選択(タッチ操作)すると、後述する通信シーケンスに従って、ゲーム装置100の間で、選択されたオブジェクト情報が移動する。すなわち、プレイヤを介した人体通信によって、ゲーム装置100−1で選択されたオブジェクトに関する情報がゲーム装置100−2へ送信され、選択されたフォルダに対応する保存先へ保存される。
なお、ゲーム装置100−1において選択されたオブジェクトに関する情報は、当該情報のゲーム装置100−1における送信完了後、あるいはゲーム装置100−2での受信完了後に、ゲーム装置100−1のRAM48(あるいは、メモリカード26のRAM26b)から削除される。
そして、ゲーム装置100−1および100−2のLCD14の表示は、それぞれ図14および図15のように変化する。
図14は、図9に示すゲームシーンにおいてあげる処理が完了した後のゲームシーンの一形態を示す図である。図15は、図13に示すゲームシーンにおいてもらう処理が完了した後のゲームシーンの一形態を示す図である。
オブジェクトをあげる/もらう処理の結果、図14に示すように、ゲーム装置100−1のLCD14には、予め獲得していたオブジェクトのうち、ゲーム装置100−2へあげたオブジェクトOBJ3を除いたオブジェクトOBJ1およびOBJ2がその名称(「AAA」および「BBB」)とともに表示される。さらに、ゲーム装置100−1のLCD14には、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−2)のプレイヤ名「YYY」および「オブジェクトCCCをあげました」といったメッセージMSS22が表示される。
一方、図15に示すように、ゲーム装置100−2のLCD14には、予め獲得していたオブジェクトOBJ3に加えて、ゲーム装置100−1からもらったオブジェクトOBJ3がその名称(「CCC」)とともに表示される。さらに、ゲーム装置100−2のLCD14には、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−1)のプレイヤ名「XXX」および「オブジェクトDDDをもらいました」といったメッセージMSS24が表示される。同時に、オブジェクトOBJ3をもらうためにプレイヤが指定したフォルダ(オブジェクトOBJ11)が表示される。
なお、人体通信は、複数のゲーム装置100の間で人体を介した伝搬経路が形成されることで確立されるので、一人のプレイヤが2つのゲーム装置100−1および100−2のLCD14(タッチパネル20)をそれぞれタッチ操作する形態に限られることなく、複数のプレイヤを介して伝搬経路が形成されてもよい。たとえば、ゲーム装置100−1のプレイヤがゲーム装置100−1のLCD14をタッチ操作し、ゲーム装置100−2のプレイヤがゲーム装置100−2のLCD14をタッチ操作し、さらに、両プレイヤが互いに手をつなぐことで、人体通信を行なうこともできる。
<データ構造>
図16は、この発明の実施の形態1に従うRAM48に展開されるメモリマップの一例を示す図である。なお、図16は、主としてオブジェクト交換等処理に係るデータ構造について示すものであり、これ以外のデータがRAM48に展開されていてもよい。
図16を参照して、RAM48は、メモリカード26のROM26aから読み出されるゲームプログラムを記憶するプログラム記憶領域48aを含む。また、RAM48は、メモリカード26のROM26aからオブジェクトを表示するための画像データを読み出して、それらを記憶するための画像データ記憶領域48bを含む。オブジェクトの画像データの各々は、ゲーム進行に伴って表示され得るキャラクターやアイテムなどの画像データに相当し、ユニークなオブジェクト識別番号に対応付けて記憶されている。
また、RAM48は、メモリカード26のRAM26bから読み出される獲得済のキャラクターなどを特定するための情報を記憶する獲得済オブジェクト情報記憶領域48cを含む。この獲得済オブジェクト情報記憶領域48cには、獲得済のキャラクターを特定するためのオブジェクト識別番号と必要なパラメータとを対応付けたデータセットが記憶される。なお、このオブジェクト識別番号は、画像データ記憶領域48bに格納されるオブジェクトの画像データの識別番号に対応する。
また、オブジェクト交換等処理によって、獲得済のキャラクターやアイテムなどの変更は、獲得済オブジェクト情報記憶領域48cに記憶されるデータの内容が追加や削除などによって実現される。すなわち、本実施の形態に従うゲーム装置100では、データ容量を削減する目的で、獲得したオブジェクトの画像データそのものではなく、予め記憶されているオブジェクトの画像データのセットから、獲得しているものを特定するための識別番号を記憶する。当然のことながら、獲得したオブジェクトの画像データそのものを記憶するようにしてもよい。
また、獲得済のオブジェクトに対応付けられたパラメータ(数値データ)としては、RPGやシミュレーションRPGなどのゲーム進行に伴って変化する各キャラクターの生命力や経験値などの数値データが記憶される。
さらに、RAM48は、CPUコア42がゲームプログラムの実行に伴って動的に生成されるデータを記憶するためのタッチパネル操作データ記憶領域48dと送受信データ一時記憶領域48eとを含む。タッチパネル操作データ記憶領域48dには、タッチパネル20で検出されたプレイヤのタッチ操作に係る情報(最新データおよび直前データなど)を記憶する。送受信データ一時記憶領域48eは、上述した人体通信によって送信/受信されるデータを一時的に記憶するバッファ領域である。なお、送受信データ一時記憶領域48eには、無線通信部66によって送信/受信されるデータも記憶するバッファ領域である。
なお、ゲーム装置100のゲーム終了時、電源遮断時およびプレイヤ指示時などにおいて、RAM48の獲得済オブジェクト情報記憶領域48cに格納されたデータは、メモリカード26のRAM26bへ書き込まれる。
<全体処理手順>
まず、図7〜図15に示すようなゲーム進行を実現するための全体処理手順について、図17を参照して説明する。
図17は、この発明の実施の形態1に従うゲームの全体処理手順を示すフローチャートである。図17に示す各ステップは、代表的に、CPUコア42が、メモリカード26に記憶されたゲームプログラムをRAM48に読み出して実行することで実現される。
図17を参照して、まず、電源が投入、あるいはスタートボタンが押下されると、CPUコア42は、ステップS2において初期処理を実行する。より具体的には、CPUコア42は、ゲーム処理で使用される変数やフラグの初期化、およびバッファやレジスタのクリアなどを行なう。初期処理が完了すると、処理はステップS4に移る。
ステップS4では、CPUコア42は、プレイヤの指示に従って、予め記憶されているキャラクター(オブジェクト)のうちいずれかを選択する(ステップS4)。すなわち、プレイヤは、ゲームプレイで使用したい好みのキャラクターを選択する。キャラクターの選択が完了すると、処理はステップS6に移る。
ステップS6では、CPUコア42は、プレイヤの操作に従って、ステップS4において選択したキャラクターを用いたゲームを進行する(ステップS6)。ステップS6のゲーム進行中において、ステップS8の判断がなされる。
ステップS8では、CPUコア42は、新たなオブジェクト(キャラクターやアイテム)を獲得したか否かを判断する。新たなオブジェクトを獲得した場合、すなわちステップS8においてYESの場合には、処理はステップS10に移る。一方、新たなオブジェクトを獲得していない場合、すなわちステップS8においてNOの場合には、ステップS10の処理をスキップして処理はステップS12に移る。
ステップS10では、CPUコア42は、当該獲得したオブジェクトのデータをRAM48の獲得済オブジェクト情報記憶領域48c(図14)に追加する。より具体的には、CPUコア42は、獲得済オブジェクト情報記憶領域48cに獲得したオブジェクトの識別番号と対応するパラメータを追加する。その後、処理はステップS12に移る。
ステップS12では、CPUコア42は、プレイヤによってオブジェクト交換等処理が指示されたか否かを判断する。すなわち、CPUコア42は、ユーザが図8に示すようなメニューの表示を指示したか否かを判断する。オブジェクト交換等処理が指示された場合、すなわちステップS12においてYESの場合には、処理はステップS14に移る。一方、オブジェクト交換等処理が指示されていない場合、すなわちステップS12においてNOの場合には、ステップS14以降の処理をスキップしてステップS30に移る。
ステップS14では、CPUコア42は、オブジェクト交換等処理のメニューを表示する。より具体的には、CPUコア42は、「交換する」、「あげる」、「もらう」の3つの項目のうちいずれかを選択可能なメニュー(図8)を表示する。引き続くステップS16では、CPUコア42は、ステップS14において表示されたメニューに含まれる項目のうち、プレイヤによる選択を受付ける。そして、CPUコア42は、ステップS18,S20,S22の判断処理によって、メニューに対してプレイヤがいずれかの項目を選択したかを判断する。なお、プレイヤが取り消しを選択した場合には、以降の処理はスキップされてステップS6に移る。
ステップS18では、CPUコア42は、プレイヤがメニューから「交換する」を選択したか否かを判断する。プレイヤがメニューから「交換する」を選択した場合、すなわちステップS18においてYESの場合には、処理はステップS24に移る。一方、プレイヤがメニューから「交換する」を選択していない場合、すなわちステップS18においてNOの場合には、処理はステップS20に移る。
ステップS20では、CPUコア42は、プレイヤがメニューから「あげる」を選択したか否かを判断する。プレイヤがメニューから「あげる」を選択した場合、すなわちステップS20においてYESの場合には、処理はステップS26に移る。一方、プレイヤがメニューから「あげる」を選択していない場合、すなわちステップS20においてNOの場合には、処理はステップS22に移る。
ステップS22では、CPUコア42は、プレイヤがメニューから「もらう」を選択したか否かを判断する。プレイヤがメニューから「もらう」を選択した場合、すなわちステップS22においてYESの場合には、処理はステップS22に移る。一方、プレイヤがメニューから「もらう」を選択していない場合、すなわちステップS22においてNOの場合には、処理はステップS6に戻る。
ステップS24では、CPUコア42は、他のゲーム装置100との間でオブジェクトを交換するための処理(交換処理)を実行する。ステップS24の交換処理の詳細は、図23〜図25に示すフローチャートに従う。ステップS24の交換処理の実行後、処理はステップS6に戻る。
ステップS26では、CPUコア42は、獲得済のオブジェクトを他のゲーム装置100へあげる(移動する)ための処理(あげる処理)を実行する。ステップS24のあげる処理の詳細は、図26〜図28に示すフローチャートに従う。ステップS26の交換処理の実行後、処理はステップS6に移る。
ステップS28では、CPUコア42は、他のゲーム装置100からオブジェクトをもらう(受入れる)ための処理(もらう処理)を実行する。ステップS28のもらう処理の詳細は、図29〜図31に示すフローチャートに従う。ステップS28のもらう処理の実行後、処理はステップS6に移る。
ステップS30では、CPUコア42は、プレイヤによってゲーム終了が指示されたか否かを判断する。ゲーム終了が指示された場合、すなわちステップS30においてYESの場合には、本フローチャートに従うゲーム処理は終了する。一方、ゲーム終了が指示されていない場合、すなわちステップS30においてNOの場合には、処理はステップS6に戻る。
<人体通信確立シーケンス>
2つのゲーム装置100の間での人体通信を確立する場合の本実施の形態に従うシーケンスについて説明する。
図18は、この発明の実施の形態1に従うゲーム装置100間で人体通信を確立するためのシーケンス図である。図19は、この発明の実施の形態1に従うゲーム装置100間で送受信されるパケットのデータ構造の一例を示す図である。
図18を参照して、初期状態として、ゲーム装置100−1および100−2において、「交換処理」「もらう処理」「あげる処理」(図17のステップS24,S26,S28)のいずれかが選択されており、かつ人体通信が確立していないとする。この状態において、たとえば、プレイヤがゲーム装置100−1に対してタッチ操作を行なうと、ゲーム装置100−1の人体通信部56(図3)がパケットの送受信を開始する。より具体的には、ゲーム装置100−1は、プレイヤによるタッチ操作が検出されると、人体通信を確立するための信号として、接続可能を示すパケットの送信を開始する(シーケンスSQ2)。
すなわち、人体通信部56(図3)は、タッチパネル20(図3)によってLCD14に対するタッチ操作(プレイヤ操作)が検出された場合に、人体通信を確立するための信号(人体通信信号)の送信を開始する。この人体通信信号は、LCD14に近接または組み込まれて配置されたアンテナ(図5の上側導電膜層204)から、予め定められた固定期間毎あるいはランダムに定められる変動期間毎に周期的に送信される。
このゲーム装置100−1のパケット(人体通信信号)の送信開始後、プレイヤがゲーム装置100−2に対してタッチ操作を行なうと、ゲーム装置100−2の人体通信部56(図3)も同様にパケットの送受信を開始する。すると、ゲーム装置100−1から送信される接続可能を示すパケットは、ゲーム装置100−2により受信される。この接続可能を示すパケットを受信したゲーム装置100−2は、当該パケットに含まれるフラグ値(図19に示すModeFlagフィールドの値)が自装置で選択されている処理にマッチしているか否かを判断する(シーケンスSQ4)。より具体的には、ゲーム装置100−2において交換処理が選択されており、かつゲーム装置100−1でも交換処理が選択されている場合に、ゲーム装置100−2では人体通信による接続が許可される。
両装置での処理がマッチしている場合には、ゲーム装置100−2からゲーム装置100−1へ接続要求が送信される(シーケンスSQ6)。ゲーム装置100−1は、この接続要求を受信することで、人体通信が確立されたと判断する。すなわち、ゲーム装置100−1からの人体通信を確立するための信号に応じて、ゲーム装置100−2から発せられた応答がゲーム装置100−1により受信された場合に、ゲーム装置100−1では人体通信が確立されたと判断される。
そして、ゲーム装置100−1は、ゲーム装置100−2へ接続確認を送信する(シーケンスSQ8)。なお、接続要求および接続確認のパケットには、パケット送信元の識別番号、すなわちID(図19に示すIDフィールドの値)が含まれる。そのため、ゲーム装置100−1および100−2は、それぞれ接続要求および接続確認の受信後、それぞれに含まれる相手先のIDを記憶する(シーケンスSQ10aおよびSQ10b)。
なお、両装置間の通信手続きを行なうに際して、予め順位付けしておくことが好ましく、図18に示すシーケンスの例では、接続可能を示すパケットを受信して、それに応答する形で接続要求を送信した側のゲーム装置(この例では、ゲーム装置100−2)を「スレーブ」とし、他方を「マスター」とする。すなわち、ゲーム装置100−1は「マスター」として機能し、ゲーム装置100−2は「スレーブ」として機能する。なお、本明細書において「マスター」および「スレーブ」とは、主として通信処理における区別(順位)を付けるために用いる属性である。
図19に示すように、本実施の形態に従うゲーム装置100が送信するパケットは、IDフィールドと、UserNameフィールドと、GameNameフィールドと、ModeFlagフィールドと、Payloadフィールドとを含む。
IDフィールドには、ゲーム装置100(自装置)のID(識別番号)が格納される。この識別番号は、ゲーム装置100固有の製造番号などが格納される。UserNameフィールドには、予めプレイヤによって設定されたプレイヤ名が格納される。なお、プレイヤ名は、メモリカード26のRAM26b(図3)、あるいは図示しないゲーム装置100本体の記憶部などに不揮発的に記憶される。GameNameフィールドには、ゲーム装置100(自装置)で実行されるゲームの種類を示す情報が記憶される。
また、ModeFlagフィールドには、プレイヤによって指定された、オブジェクト交換等処理のうち指定された処理の種類を格納するためのフラグ値が記憶される。たとえば、「交換処理」は「1」、「あげる処理」は「2」、「もらう処理」は「3」といった具合である。
また、Payloadフィールドには、ゲーム装置100の間で送信/受信される実体データが格納される。すなわち、図18のシーケンスSQ6の「接続要求」を示すコマンドや、図18のシーケンスSQ8に示す「接続確認」を示すコマンドや、後述する対象のオブジェクト情報などが格納される。
以下の説明では、オブジェクト交換等処理において、プレイヤによって選択された、交換、送信、受信の対象となるオブジェクトを「対象オブジェクト」あるいは「選択オブジェクト」とも称する。
<交換処理シーケンス>
図20は、この発明の実施の形態1に従うゲーム装置100間で実行される交換処理に係るシーケンス図である。なお、図20に示すシーケンスは、図18に示すシーケンスに続いて、実行される。
図20を参照して、対象オブジェクトのオブジェクト情報の送信に先立って、まず、ゲーム装置100−1および100−2は、プレイヤによるタッチ操作中であることを確認するためのパケット(タッチ操作中を示すパケット)を相手先へそれぞれ送信する(シーケンスSQ20a,SQ20b)。
続いて、プレイヤのタッチ操作によって対象オブジェクトがそれぞれ確定すると、ゲーム装置100−1および100−2は、各々での対象オブジェクトの確定を通知するためのオブジェクト確定信号を相手先へそれぞれ送信する(シーケンスSQ22a,SQ22b)。
このオブジェクト確定信号の送信後、ゲーム装置100−1および100−2は、各々での対象オブジェクトのオブジェクト情報を相手先へそれぞれ送信する(シーケンスSQ24a,26a)とともに、各オブジェクト情報の送信が完了すると、さらに送信完了信号を相手先へ送信する(シーケンスSQ24b,SQ26b)。
続いて、ゲーム装置100−1および100−2は、相手先へのオブジェクト情報の送信が完了すると、自装置のRAM48の獲得済オブジェクト情報記憶領域48c(図16)から、相手先のゲーム装置100へ送信したオブジェクト情報をそれぞれ削除する(シーケンスSQ28a,SQ28b)。さらに、ゲーム装置100−1および100−2は、相手先から受信したオブジェクト情報を、自装置のRAM48の獲得済オブジェクト情報記憶領域48cにそれぞれ追加する(シーケンスSQ30a,SQ30b)。なお、相手先から送信されるオブジェクト情報は、各装置の送受信データ一時記憶領域48e(図3)に一時的にそれぞれ記憶される。そして、上述のシーケンスSQ28a,SQ28bおよびSQ30a,SQ30bに示されるように、対象のオブジェクトに関する情報の送信完了後、または他のゲーム装置から送信される情報の受信完了後に、自装置のRAM48に記憶された対応するオブジェクト情報が更新される。
<あげる/もらう処理シーケンス>
図21は、この発明の実施の形態1に従うゲーム装置100間で実行される、あげる/もらう処理に係るシーケンス図である。なお、図21に示すシーケンスは、図18に示すシーケンスに続いて、実行される。
図21を参照して、あげる/もらう処理の場合には、図20に示す交換処理のうち、一方装置から他方装置へのオブジェクト情報の送信に係る処理のみが実行される。すなわち、図20と同様に、対象オブジェクトのオブジェクト情報の送信に先立って、ゲーム装置100−1および100−2からは、プレイヤによるタッチ操作中であることを確認するためのパケット(タッチ操作中を示すパケット)が相手先へそれぞれ送信される(シーケンスSQ20a,SQ20b)。続いて、プレイヤのタッチ操作によって対象オブジェクト(送信されるオブジェクト(キャラクターやアイテム)および受入れるフォルダ(保存先))がそれぞれ確定すると、ゲーム装置100−1および100−2は、それぞれ対象オブジェクトの確定を通知するためのオブジェクト確定信号および対象フォルダの確定を通知するためのフォルダ確定信号を相手先へ送信する(シーケンスSQ32,SQ34)。
これらの確定信号の送信後、ゲーム装置100−1は、対象オブジェクトのオブジェクト情報を相手先へ送信する(シーケンスSQ24a)とともに、オブジェクト情報の送信が完了すると、さらに送信完了信号を相手先へ送信する(シーケンスSQ26a)。続いて、ゲーム装置100−1は、相手先へのオブジェクト情報の送信が完了すると、自装置のRAM48の獲得済オブジェクト情報記憶領域48c(図16)から、相手先へ送信したオブジェクト情報を削除し(シーケンスSQ28)、ゲーム装置100−2は、相手先から受信したオブジェクト情報を、自装置のRAM48の獲得済オブジェクト情報記憶領域48にc追加する(シーケンスSQ30)。
<通信状態判断シーケンス>
上述した交換処理またはあげる/もらう処理とは独立して、他のゲーム装置との間の人体通信の状態を判断するための処理(通信状態判断処理)が並行して実行される。この通信状態判断処理では、人体通信が正常に確立しているか否かが判断される。この通信状態判断のシーケンスについて、図22を参照して説明する。
図22は、この発明の実施の形態1に従うゲーム装置100間で実行される通信状態判断処理に係るシーケンス図である。なお、図22に示すシーケンスは、図20または図21に示すシーケンスとは独立に実行される。
図22を参照して、ゲーム装置100−1とゲーム装置100−2との間で、相手先への問合せの送信と当該問合せに対する応答とを交互に繰返すことで、人体通信が途切れたこと(人体通信の異常発生)が監視される。
具体的には、ゲーム装置100−1からゲーム装置100−2に対して、問合せパケットが送信される(シーケンスSQ40a)。この問合せパケットを受信したゲーム装置100−2は、自身のIDを含む応答パケットをゲーム装置100−1へ返信する(シーケンスSQ42a)。この応答パケットを受取ったゲーム装置100−1は、予め記憶しているゲーム装置100−2のID(図18のシーケンスSQ10a参照)と、当該応答パケットに含まれるIDとを比較して、両者が一致するか否かを判断する(IDチェック)(シーケンスSQ44a)。この一連の処理が問題なく実行される場合には、ゲーム装置100−1は、ゲーム装置100−2との間の人体通信が正常に確立されていると判断する。
同様に、ゲーム装置100−2についても、問合せパケットの送信(シーケンスSQ40b)、応答パケットの返信(シーケンスSQ42b)、IDチェック(シーケンスSQ44b)を行なって、ゲーム装置100−1との間の人体通信が正常に確立されていると判断する。
ここで、何らかの原因で、ゲーム装置100−1からの問合せパケットがゲーム装置100−2へ到達しなかった場合(シーケンスSQ40a)や、ゲーム装置100−2からの応答パケットがゲーム装置100−1へ到達しなかった場合には、ゲーム装置100−1は、ゲーム装置100−2との間の人体通信が途切れた(異常である)と判断する。この場合には、ゲーム装置100−1は、自装置に記憶される通信エラーフラグを「オン」に設定する。この通信エラーフラグは、後述するように、一連の交換等処理において人体通信の状態を判断するために用いられる。ゲーム装置100−2についても同様である。
<交換処理フロー>
図23および図24は、この発明の実施の形態1に従う交換処理の手順を示すフローチャートである。なお、図23および図24に示すフローチャートは、図17に示すフローチャートのステップS24の詳細な処理を示すものである。これらのフローチャートに示された処理は、交換処理を行なう2つのゲーム装置100−1および100−2の各々において実行される。
図23を参照して、CPUコア42は、ステップS100において、RAM48の獲得済オブジェクト情報記憶領域48cから獲得済オブジェクト情報を読出し、獲得済のオブジェクトを一覧表示する(図9および図10参照)。獲得済のオブジェクトが一覧表示されると、処理はステップS102に移る。
ステップS102では、CPUコア42は、交換操作をプレイヤにガイドするために、「あげるオブジェクトをタッチしてください」といったメッセージを表示する(図9および図10参照)。引き続くステップS104では、CPUコア42は、プレイヤによるタッチパネル20に対するタッチ操作がされているか否かを判断する。タッチパネル20に対するタッチ操作がされている場合、すなわちステップS104においてYESの場合には、処理はステップS106に移る。一方、タッチパネル20に対するタッチ操作がされていない場合、すなわちステップS104においてNOの場合には、処理はステップS104に戻り、プレイヤによってタッチ操作がされるのを待つ。なお、このタッチ検出は人体通信を行なうことができるか否かを判断するためのものであり、対象オブジェクトがタッチ操作により選択されていなくともよい。
ステップS106では、CPUコア42は、相手先との間で人体通信を確立するためのサーチ処理(1)を実行する。ステップS106のサーチ処理(1)の詳細は、図25に示すフローチャートに従う。このステップS106のサーチ処理(1)の実行後、処理はステップS108に移る。
ステップS108では、CPUコア42は、相手先から受信した相手先のプレイヤ名を表示する(図9および図10参照)。この相手先のプレイヤ名は、図19に示すパケットのUserNameフィールドに格納された値から抽出される。
ステップS110〜ステップS114では、両装置でプレイヤによるタッチ操作が継続しているか否かが判断される。具体的には、ステップS110では、CPUコア42は、自装置においてタッチパネル20に対するタッチ操作がされているか否かを判断する。タッチパネル20に対するタッチ操作がされている場合、すなわちステップS110においてYESの場合には、処理はステップS112に移る。一方、タッチパネル20に対するタッチ操作がされていない場合、すなわちステップS110においてNOの場合には、処理はステップS116に移る。
ステップS112では、CPUコア42は、自装置のタッチオンフラグ値をタッチ操作中であることを示す「オン」にセットし、当該タッチオンフラグ値を含むパケットを相手先に送信する(図20のシーケンスSQ20a,20b参照)。タッチオンフラグ値を含むパケットの送信後、処理はステップS114に移る。
ステップS114では、CPUコア42は、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」、すなわち相手先でもタッチ操作中であることを示す値であるか否かを判断する。相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」である場合、すなわちステップS114においてYESの場合、処理はステップS118に移る。一方、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」でない場合、すなわちステップS114においてNOの場合、処理はステップS116に移る。
ステップS118では、CPUコア42は、相手先のゲーム装置100との間で確立された人体通信にエラーが発生しているか否かを判断する。具体的には、CPUコア42は、通信エラーフラグ(図22のシーケンスSQ22参照)がオンになっているか否かに基づいて、人体通信のエラー有無を判断する。人体通信にエラーが発生していない場合、すなわちステップS118においてNOの場合には、処理はステップS120に移る。一方、人体通信にエラーが発生している場合、すなわちステップS118においてYESの場合には、処理はステップS116に移る。
ステップS116では、CPUコア42は、相手先とのオブジェクト交換の継続が不可能であると判断し、オブジェクトの選択表示を中止する。そして、処理はステップS100に戻る。
ステップS120では、CPUコア42は、プレイヤが交換可能なオブジェクトをタッチ操作しているか否かを判断する。この判断は、タッチパネル20で検出される座標位置が、オブジェクトの中心を含む所定範囲内に含まれているか否かに基づいて行なわれる。プレイヤが交換可能なオブジェクトをタッチしている場合、すなわちステップS120においてYESの場合には、処理はステップS122に移る。一方、プレイヤが交換可能なオブジェクトをタッチしていない場合、すなわちステップS120においてNOの場合には、処理はステップS100に戻る。
ステップS122では、CPUコア42は、ステップS120において選択されたオブジェクトに対して選択表示を行なう。なお、選択表示とは、LCD14上に選択可能な複数のオブジェクトが表示される場合に、選択されたオブジェクトを他のオブジェクトと識別可能に表示形態を変更することを意味し、たとえば、選択されたオブジェクトの外形に沿って特定色のマーカーを重畳したり、選択されたオブジェクトを点滅表示したりする。この選択表示の後、処理はステップS124に移る。
ステップS124では、CPUコア42は、ステップS122で選択された同一のオブジェクトに対するタッチが所定期間を超えて継続しているか否かを判断する。同一のオブジェクトに対するタッチが所定期間を超えて継続している場合、すなわちステップS124においてYESの場合には、処理はステップS126に移る。一方、同一のオブジェクトに対するタッチが所定期間を超えて継続していない場合、すなわちステップS124においてNOの場合には、処理はステップS100に戻る。
ステップS126では、CPUコア42は、ステップS122において選択されたオブジェクトを相手先へ送信するオブジェクト(送信対象オブジェクト)として確定し、当該オブジェクトを確定表示する。引き続くステップS128では、CPUコア42は、送信対象オブジェクトの確定を通知するパケットを相手先に送信する(図20のシーケンスSQ22a,SQ22b参照)。その後、処理はステップS130に移る。さらに引き続くステップS130では、CPUコア42は、相手先から、送信対象オブジェクトの確定を通知するパケットの受信を待つ。相手先から送信対象オブジェクトの確定を通知するパケットを受信後、処理は図24に示すステップS132に移る。
次に、図24を参照して、ステップS132では、CPUコア42は、交換操作をプレイヤにガイドするために、「開始します。タッチを継続してください」といったメッセージを表示する。
引き続くステップS134では、CPUコア42は、送信対象オブジェクトについてのオブジェクト情報を相手先へ送信する(図20のシーケンスSQ24a,SQ26a参照)。すなわち、タッチパネル20によって表示中のいずれかのオブジェクトの選択が検出されると、当該選択されたオブジェクトに関する情報の送信が実行される。そして、処理はステップS136に移る。
ステップS136では、CPUコア42は、送信対象オブジェクトについてのオブジェクト情報の送信が完了したか否かを判断する。送信対象オブジェクトについてのオブジェクト情報の送信が完了した場合、すなわちステップS136においてYESの場合、処理はステップS138に移る。一方、送信対象オブジェクトについてのオブジェクト情報の送信が完了していない場合、すなわちステップS136においてNOの場合、処理はステップS138,S140をスキップしてステップS142に移る。
ステップS138では、CPUコア42は、送信対象オブジェクトについてのオブジェクト情報の送信完了をRAM48に記憶する。引き続くステップS140では、CPUコア42は、送信対象オブジェクトについてのオブジェクト情報の送信完了通知を相手先に送信する(図20のシーケンスSQ24b,SQ26b参照)。その後、処理はステップS142に移る。
ステップS142では、相手先のゲーム装置100から、相手先における送信対象オブジェクト(すなわち、自装置から見て受信対象オブジェクト)についてのオブジェクト情報の受信が完了したか否かを判断する。なお、相手先から受信したオブジェクト情報は、RAM48の送受信データ一時記憶領域48eに記憶される。
相手先のゲーム装置100から受信対象オブジェクトについてのオブジェクト情報の受信が完了している場合、すなわちステップS142においてYESの場合には、処理はステップS150に移る。一方、相手先のゲーム装置100から受信対象オブジェクトについてのオブジェクト情報の受信が完了していない場合、すなわちステップS140においてNOの場合には、処理はステップS144に移る。
ステップS144では、CPUコア42は、相手先のゲーム装置100からの送信対象オブジェクト(自装置から見て受信対象オブジェクト)についてのオブジェクト情報の受信を待つ。その後、処理はステップS146に移る。
ステップS146では、CPUコア42は、相手先のゲーム装置100から、送信対象オブジェクト(自装置から見て受信対象オブジェクト)についての送信完了通知を受信したか否かを判断する。相手先のゲーム装置100から送信完了通知を受信した場合、すなわちステップS146においてYESの場合には、処理はステップS148に移る。一方、相手先のゲーム装置100から送信完了通知を受信していない場合、すなわちステップS146においてNOの場合には、処理はステップS150に移る。
ステップS148では、CPUコア42は、相手先のゲーム装置100からの受信対象オブジェクトについてのオブジェクト情報の受信完了をRAM48に記憶する。その後、処理はステップS150に移る。
ステップS150では、CPUコア42は、オブジェクト情報の送信完了および受信完了がRAM48に記憶されているか否かを判断する。オブジェクト情報の送信完了および受信完了がRAM48に記憶されている場合、すなわちステップS150においてYESの場合には、処理はステップS152に移る。一方、オブジェクト情報の送信完了および受信完了のいずれかがRAM48に記憶されていない場合、すなわちステップS152においてNOの場合には、処理はステップS156に移る。
ステップS152では、RAM48の獲得済オブジェクト情報記憶領域48cから、相手先のゲーム装置100へ送信したオブジェクト情報のエントリを削除する。引き続くステップS154では、CPUコア42は、相手先のゲーム装置100から受信したオブジェクト情報をRAM48の送受信データ一時記憶領域48eから読出し、RAM48の獲得済オブジェクト情報記憶領域48cに追加する。その後、処理はリターンする。
このように、各ゲーム装置100では、選択オブジェクトに関する情報の送信完了後にRAM48に記憶された対応する情報が更新(削除)される。また、他のゲーム装置100から送信される情報の受信完了後に、RAM48に記憶された対応する情報が更新(追加)される。
以下、ステップS156〜S164の各処理は、人体通信を正常に行なうことができないと判断される場合の終了処理である。具体的には、ステップS156,S162,S164の処理は、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置100から送信される情報の受信完了前に、タッチパネル20による選択オブジェクトについてのプレイヤ操作の検出が途切れた場合に、実行中の送信または受信を中止するための処理である。また、ステップS168,S162,S164の処理は、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置100から送信される情報の受信完了前に、人体通信が途切れた場合に、実行中の送信または受信を中止するための処理である。
具体的には、ステップS156では、CPUコア42は、自装置においてタッチパネル20に対するタッチ操作がされているか否かを判断する。タッチパネル20に対するタッチ操作がされている場合、すなわちステップS156においてYESの場合には、処理はステップS158に移る。一方、タッチパネル20に対するタッチ操作がされていない場合、すなわちステップS156においてNOの場合には、処理はステップS162に移る。
ステップS158では、CPUコア42は、自装置のタッチオンフラグ値をタッチ操作中であることを示す「オン」にセットし、当該タッチオンフラグ値を含むパケットを相手先のゲーム装置100に送信する。タッチオンフラグ値を含むパケットの送信後、処理はステップS160に移る。
ステップS160では、CPUコア42は、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」、すなわち相手先においてタッチ操作中であることを示す値であるか否かを判断する。相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」である場合、すなわちステップS160においてYESの場合、処理はステップS166に移る。一方、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」でない場合、すなわちステップS160においてNOの場合、処理はステップS162に移る。
ステップS162では、CPUコア42は、相手先とのオブジェクト交換の継続が不可能であると判断し、プレイヤにその旨を通知するために、「キャンセルしました」といったメッセージを表示する。引き続くステップS164では、CPUコア42は、RAM48の送受信データ一時記憶領域48eに記憶されている、相手先のゲーム装置100から受信したオブジェクト情報を破棄する。そのため、相手先のゲーム装置100からの受信が完了する前のオブジェクト情報は保存されない。そして、処理はステップS100に戻る。
一方、ステップS166では、CPUコア42は、交換処理のキャンセル操作をプレイヤにガイドするために、「手を離せばキャンセルできます」といったメッセージを表示する。同時に、オブジェクト情報の送信中であることを示すバー表示(進行表示)を行なってもよい。
引き続くステップS168では、CPUコア42は、相手先のゲーム装置100との間で確立された人体通信にエラーが発生しているか否かを判断する。この人体通信にエラーが発生しているか否かの判断は、通信エラーフラグ(図22のシーケンスSQ22参照)に基づいてなされる。人体通信にエラーが発生していない場合、すなわちステップS168においてNOの場合には、処理はステップS134に移る。一方、人体通信にエラーが発生している場合、すなわちステップS168においてYESの場合には、処理はステップS162に移る。
<サーチ処理(1)フロー>
図25は、図23に示すフローチャートのステップS106におけるサーチ処理(1)の詳細を示すフローチャートである。図25に示すフローチャートは、図18に示すシーケンス図に対応する。
図25を参照して、まずステップS200では、所定の期間に亘って、いずれかのゲーム装置100からの接続可能を示すパケットの受信を待つ(図18のシーケンスSQ2参照)。引き続くステップS202では、CPUコア42は、いずれかのゲーム装置から人体通信により接続可能を示すパケットを受信したか否かを判断する。ステップS200およびS202では、いずれかのゲーム装置100から送信されるパケットの有無に基づいて、相手先となり得るゲーム装置100においてプレイヤが既にタッチ操作をしているか否かが判断される。相手先のゲーム装置100から人体通信により接続可能を示すパケットを受信していない場合、すなわちステップS202においてNOの場合、処理はステップS204に移る。一方、相手先のゲーム装置100から人体通信により接続可能を示すパケットを受信している場合、すなわちステップS202においてYESの場合、処理はステップS212に移る。
ステップS204では、CPUコア42は、接続可能なゲーム装置100が存在しないと判断し、接続可能を示すパケットの送信を開始する(図18のシーケンスSQ2参照)。この接続可能を示すパケットは、「交換処理中」であることを示すフラグ値を含む。
引き続くステップS206で、CPUコア42は、相手先から接続要求を受信したか否かを判断する。相手先から接続要求を受信した場合、すなわちステップS206においてYESの場合には、処理はステップS208に移る。一方、相手先から接続要求を受信しなかった場合、すなわちステップS206においてNOの場合には、処理はステップS204に戻る。
ステップS208では、CPUコア42は、相手先に接続確認を送信する(図18のシーケンスSQ8参照)。引き続くステップS210では、CPUコア42は、マスターフラグを「オン」にする。このような一連の処理により、人体通信が確立される。
これに対して、ステップS212では、CPUコア42は、接続可能なゲーム装置100が存在すると判断し、当該相手先から受信したパケットに含まれるフラグ値が「交換処理中」であることを示す値であるか否かを判断する。
相手先から受信したパケットに含まれるフラグ値が「交換処理中」であることを示す値である場合、すなわちステップS212においてYESの場合には、処理はステップS214に移る。一方、すなわちステップS212においてNOの場合には、処理はステップS220に移る。
ステップS214では、CPUコア42は、当該相手先に接続要求を送信する(図18のシーケンスSQ6参照)。引き続くステップS216では、CPUコア42は、当該相手先から接続確認を受信したか否かが判断する。当該相手先から接続確認を受信した場合、すなわちステップS216においてYESの場合には、処理はステップS218に移る。一方、当該相手先から接続確認を受信しなかった場合、すなわちステップS216においてNOの場合には、処理はステップS214に戻る。
ステップS218では、CPUコア42は、ゲーム装置間の人体通信が確立されたと判断し、スレーブフラグを「オン」にする。その後、処理はリターンする。
ステップS220では、CPUコア42は、相手先とのオブジェクト交換が不可能であると判断し、プレイヤにその旨を通知するために、「オブジェクトを交換できません」といったメッセージを表示する。そして、処理は図23のステップS100に戻る。
<あげる処理フロー>
図26および図27は、この発明の実施の形態1に従うあげる処理の手順を示すフローチャートである。図26および図27は、この発明の実施の形態1に従う交換処理の手順を示すフローチャートである。なお、図26および図27に示すフローチャートは、図17に示すフローチャートのステップS26の詳細な処理を示すものである。このフローチャートに示された処理は、2つのゲーム装置100の一方において実行される。
図26に示すフローチャートに含まれる各ステップ(ステップS300〜S330)の処理は、図23に示す交換処理に係るフローチャートに含まれる各ステップ(ステップS100〜S130)の処理とほぼ同様である。図23と図26との間では、図23のステップS130では、相手先から送信対象オブジェクトの確定信号を受信するのに対して、図26のステップS330では、相手先から対象オブジェクトを受入れるためのフォルダの確定信号を受信する点が相違する。また、図26のステップS306では、図28に示すサーチ処理(2)が実行される点が相違している。
その他のステップの内容については、図23と同様であるので、詳細な説明は繰返さない。
図26に示す各ステップの処理が実行された後、図27に示す各ステップの処理が実行される。図27に示す各ステップは、基本的には、図23に示す交換処理に係るフローチャートに含まれるステップのうち、相手先からオブジェクト情報を受信する処理を除いたものに相当する。より具体的には、以下のようになる。
ステップS332では、CPUコア42は、交換操作をプレイヤにガイドするために、「開始します。タッチを継続してください」といったメッセージを表示する。引き続くステップS334では、CPUコア42は、送信対象オブジェクトについてのオブジェクト情報を相手先のゲーム装置100へ送信する(図21のシーケンスSQ24a,SQ26a参照)。すなわち、タッチパネル20によって表示中のいずれかのオブジェクトの選択が検出されると、当該選択されたオブジェクトに関する情報の送信が実行される。そして、処理はステップS336に移る。
ステップS336では、CPUコア42は、送信対象オブジェクトについてのオブジェクト情報の送信が完了したか否かを判断する。送信対象オブジェクトについてのオブジェクト情報の送信が完了した場合、すなわちステップS336においてYESの場合、処理はステップS338に移る。一方、送信対象オブジェクトについてのオブジェクト情報の送信が完了していない場合、すなわちステップS336においてNOの場合、処理はステップS342に移る。
ステップS338では、CPUコア42は、送信対象オブジェクトについてのオブジェクト情報の送信完了通知を相手先のゲーム装置100に送信する(図21のシーケンスSQ24b,SQ26b参照)。引き続くステップS340では、CPUコア42は、RAM48の獲得済オブジェクト情報記憶領域48cから、相手先のゲーム装置100へ送信したオブジェクト情報のエントリを削除する。その後、処理はリターンする。
以下、ステップS342〜S348の各処理は、人体通信を正常に行なうことができないと判断される場合の終了処理である。具体的には、ステップS342,S348の処理は、選択オブジェクトに関する情報の送信完了前に、タッチパネル20による選択オブジェクトについてのプレイヤ操作の検出が途切れた場合に、実行中の送信を中止するための処理である。また、ステップS352,S348の処理は、選択オブジェクトに関する情報の送信完了前に、人体通信が途切れた場合に、実行中の送信または受信を中止するための処理である。
具体的には、ステップS342では、CPUコア42は、自装置においてタッチパネル20に対するタッチ操作がされているか否かを判断する。タッチパネル20に対するタッチ操作がされている場合、すなわちステップS342においてYESの場合には、処理はステップS344に移る。一方、タッチパネル20に対するタッチ操作がされていない場合、すなわちステップS342においてNOの場合には、処理はステップS348に移る。
ステップS344では、CPUコア42は、自装置のタッチオンフラグ値をタッチ操作中であることを示す「オン」にセットし、当該タッチオンフラグ値を含むパケットを相手先のゲーム装置100に送信する。タッチオンフラグ値を含むパケットの送信後、処理はステップS346に移る。
ステップS346では、CPUコア42は、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」、すなわち相手先でタッチ操作中であることを示す値であるか否かを判断する。相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」である場合、すなわちステップS346においてYESの場合、処理はステップS350に移る。一方、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」でない場合、すなわちステップS346においてNOの場合、処理はステップS348に移る。
ステップS348では、CPUコア42は、相手先とのオブジェクト交換の継続が不可能であると判断し、プレイヤにその旨を通知するために、「キャンセルしました」といったメッセージを表示する。そして、処理はステップS300に戻る。
一方、ステップS350では、CPUコア42は、交換処理のキャンセル操作をプレイヤにガイドするために、「手を離せばキャンセルできます」といったメッセージを表示する。同時に、オブジェクト情報の送信中であることを示すバー表示(進行表示)を行なってもよい。引き続くステップS352では、CPUコア42は、相手先のゲーム装置100との間で確立された人体通信にエラーが発生しているか否かを判断する。この人体通信にエラーが発生しているか否かの判断は、通信エラーフラグ(図22のシーケンスSQ22参照)に基づいてなされる。人体通信にエラーが発生していない場合、すなわちステップS352においてNOの場合には、処理はステップS334に移る。一方、人体通信にエラーが発生している場合、すなわちステップS352においてYESの場合には、処理はステップS348に移る。
<サーチ処理(2)フロー>
図28は、図26に示すフローチャートのステップS306におけるサーチ処理(2)の詳細を示すフローチャートである。図28に示すフローチャートは、図18に示すシーケンス図に対応する。
図28に示すフローチャートに含まれる各ステップ(ステップS400〜S420)の処理は、図25に示す交換処理に係るフローチャートに含まれるステップ(ステップS200〜S220)の処理とほぼ同様である。図25と図28との間では、図25のステップS212では、相手先から受信したパケットに含まれるフラグ値(図19に示すModeFlagフィールドの値)が「交換処理中」を示す値であれば、接続可能なゲーム装置100が存在すると判断されるのに対して、図28のステップS412では、相手先から受信したパケットに含まれるフラグ値(図19に示すModeFlagフィールドの値)が「もらう処理中」を示す値であれば、接続可能なゲーム装置100が存在すると判断される点で相違している(図18のシーケンスSQ4参照)。これは、一方から他方へのオブジェクト情報の移動は、あげる処理ともらう処理とが対にならなければならないからである。
その他のステップの内容については、図25と同様であるので、詳細な説明は繰返さない。
<もらう処理フロー>
図29および図30は、この発明の実施の形態1に従う交換処理の手順を示すフローチャートである。なお、図29および図30に示すフローチャートは、図17に示すフローチャートのステップS28の詳細な処理を示すものである。このフローチャートに示された処理は、2つのゲーム装置100の一方において実行される。
図29に示すフローチャートに含まれる各ステップ(ステップS500〜S530)は、図23に示す交換処理に係るフローチャートに含まれるステップ(ステップS100〜S130)とほぼ同様である。図23と図29との間では、図23のフローチャートでは、プレイヤが交換対象のオブジェクトを選択するのに対して、図29のフローチャートでは、プレイヤがオブジェクトを受入れるフォルダを選択する点が相違する。しかしながら、プレイヤがオブジェクト候補の中からいずれかを選択する点という意味では同様である。また、図29のステップS506では、図31に示すサーチ処理(3)が実行される点が相違している。
その他のステップの内容については、図23と同様であるので、詳細な説明は繰返さない。
図29に示す各ステップの処理が実行された後、図30に示す各ステップの処理が実行される。図30に示す各ステップは、基本的には、図23に示す交換処理に係るフローチャートに含まれるステップのうち、相手先にオブジェクト情報を送信する処理を除いたものに相当する。より具体的には、以下のようになる。
ステップS532では、CPUコア42は、交換操作をプレイヤにガイドするために、「開始します。タッチを継続してください」といったメッセージを表示する。引き続くステップS534では、CPUコア42は、相手先のゲーム装置100から受信対象オブジェクトについてのオブジェクト情報の受信を行なう。なお、相手先のゲーム装置100から受信したオブジェクト情報は、RAM48の送受信データ一時記憶領域48eに記憶される。そして、処理はステップS536に移る。
ステップS536では、CPUコア42は、相手先のゲーム装置100から受信対象オブジェクトについてのオブジェクト情報の受信が完了したか否かを判断する。受信対象オブジェクトについてのオブジェクト情報の受信が完了している場合、すなわちステップS536においてYESの場合には、処理はステップS538に移る。一方、受信対象オブジェクトについてのオブジェクト情報の受信が完了していない場合、すなわちステップS536においてNOの場合には、処理はステップS540に移る。
ステップS538では、CPUコア42は、相手先のゲーム装置100から受信したオブジェクト情報をRAM48の送受信データ一時記憶領域48eから読出し、RAM48の確定した保存先に記憶する。その後、処理はリターンする。
以下、ステップS540〜S548の各処理は、人体通信を正常に行なうことができないと判断される場合の終了処理である。具体的には、ステップS540,S546,S548の処理は、他のゲーム装置100から送信される情報の受信完了前に、タッチパネル20による選択オブジェクト(フォルダ)についてのプレイヤ操作の検出が途切れた場合に、実行中の受信を中止するための処理である。また、ステップS552,S546,S548の処理は、他のゲーム装置100から送信される情報の受信完了前に、人体通信が途切れた場合に、実行中の受信を中止するための処理である。
具体的には、ステップS540では、CPUコア42は、自装置においてタッチパネル20に対するタッチ操作がされているか否かを判断する。タッチパネル20に対するタッチ操作がされている場合、すなわちステップS540においてYESの場合には、処理はステップS542に移る。一方、タッチパネル20に対するタッチ操作がされていない場合、すなわちステップS540においてNOの場合には、処理はステップS546に移る。
ステップS542では、CPUコア42は、タッチオンフラグ値を自装置でのタッチ操作中であることを示す「オン」にセットし、当該タッチオンフラグ値を含むパケットを相手先のゲーム装置100に送信する。タッチオンフラグ値を含むパケットの送信後、処理はステップS544に移る。
ステップS544では、CPUコア42は、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」、すなわち相手先でタッチ操作中であることを示す値であるか否かを判断する。相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」である場合、すなわちステップS544においてYESの場合、処理はステップS550に移る。一方、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」でない場合、すなわちステップS544においてNOの場合、処理はステップS546に移る。
ステップS546では、CPUコア42は、相手先とのオブジェクト交換の継続が不可能であると判断し、プレイヤにその旨を通知するために、「キャンセルしました」といったメッセージを表示する。引き続くステップS548では、CPUコア42は、RAM48の送受信データ一時記憶領域48eに記憶されている、相手先のゲーム装置100から受信したオブジェクト情報を破棄する。そして、処理はステップS500に戻る。
一方、ステップS550では、CPUコア42は、交換処理のキャンセル操作をプレイヤにガイドするために、「手を離せばキャンセルできます」といったメッセージを表示する。同時に、オブジェクト情報の受信中であることを示すバー表示(進行表示)を行なってもよい。引き続くステップS552では、CPUコア42は、相手先のゲーム装置100との間で確立された人体通信にエラーが発生しているか否かを判断する。この人体通信にエラーが発生しているか否かの判断は、通信エラーフラグ(図22のシーケンスSQ22参照)に基づいてなされる。人体通信にエラーが発生していない場合、すなわちステップS552においてNOの場合には、処理はステップS534に移る。一方、人体通信にエラーが発生している場合、すなわちステップS552においてYESの場合には、処理はステップS546に移る。
<サーチ処理(3)フロー>
図31は、図28に示すフローチャートのステップS506におけるサーチ処理(3)の詳細を示すフローチャートである。
図31に示すフローチャートに含まれる各ステップ(ステップS600〜S620)の処理は、図25に示す交換処理に係るフローチャートに含まれるステップ(ステップS200〜S220)の処理とほぼ同様である。図25と図31との間では、図25のステップS212では、相手先から受信したパケットに含まれるフラグ値(図19に示すModeFlagフィールドの値)が「交換処理中」を示す値であれば、接続可能なゲーム装置100が存在すると判断されるのに対して、図31のステップS612では、相手先から受信したパケットに含まれるフラグ値(図19に示すModeFlagフィールドの値)が「あげる処理中」を示す値であれば、接続可能なゲーム装置100が存在すると判断される点で相違している。これは、一方から他方へのオブジェクト情報の移動は、あげる処理ともらう処理とが対にならなければならないからである。
その他のステップの内容については、図25と同様であるので、詳細な説明は繰返さない。
<通信状態判断処理フロー>
図22を参照して説明したように、本実施の形態に従うゲーム装置100は、相手先との人体通信の状態を継続的に監視する。この通信状態判断処理の処理手順について、図32を参照して説明する。
図32は、この発明の実施の形態1に従う通信状態判断処理の手順を示すフローチャートである。なお、図32のフローチャートに示される一連の処理は、図23〜図31に示すようなオブジェクト交換等処理に係るプロセスとは別プロセスとして並列的に実行される。
図32を参照して、最初のステップS700では、CPUコア42は、相手先から問合せパケットを受信できたか否かを判断する(図22のシーケンスSQ40a,SQ40b参照)。相手先から問合せパケットを受信できた場合、すなわちステップS700においてYESの場合には、処理はステップS702に移る。一方、相手先から問合せパケットを受信できなかった場合、すなわちステップS700においてNOの場合には、処理はステップS702をスキップして、ステップS704に移る。
ステップS702では、CPUコア42は、受信した問合せパケットの送信元に対して、応答パケットを送信する(図22のシーケンスSQ42a,SQ42b参照)。この応答パケットには、自装置のIDを付加する。そして、処理はステップS704に移る。
ステップS704では、CPUコア42は、相手先へ問合せパケットを送信する。引き続くステップS706では、相手先から応答パケットを受信できたか否かを判断する。相手先から応答パケットを受信できた場合、すなわちステップS706においてYESの場合には、処理はステップS708に移る。一方、相手先から応答パケットを受信できなかった場合、すなわちステップS706においてNOの場合には、処理はステップS712に移る。
ステップS708では、CPUコア42は、応答パケットに含まれる相手先のIDが、予め記憶したID(図18のシーケンスSQ18a,SQ18b参照)と一致するか否かを判断する。応答パケットに含まれる相手先のIDが、予め記憶したIDと一致する場合、すなわちステップS708においてYESの場合には、処理はステップS710に移る。一方、応答パケットに含まれる相手先のIDが、予め記憶したIDと一致しない場合、すなわちステップS708においてNOの場合には、処理はステップS714に移る。
ステップS710では、CPUコア42は、相手先から受信した応答パケットを記憶する。
ステップS712では、CPUコア42は、相手先から応答パケットを受信できない期間が所定期間を超えて継続したか否かを判断する。相手先から応答パケットを受信できない期間が所定期間を超えて継続していない場合、すなわちステップS712においてNOの場合には、処理はステップS706に戻る。一方、相手先から応答パケットを受信できない期間が所定期間を超えて継続した場合、すなわちステップS712においてYESの場合には、処理はステップS714に移る。
ステップS714では、CPUコア42は、通信エラーフラグをオンにし、処理を終了する。
[実施の形態1の第1変形例]
上述の実施の形態1に従うオブジェクト交換等処理(図23,図24,図26,図27,図29,図30)は、両ゲーム装置100のそれぞれにおいて、プレイヤによるタッチ操作中であることを確認するステップを含む。すなわち、図23のステップS110〜S114、図24のステップS156〜S160、図26のステップS310〜S314、図27のステップS320〜S324、図29のステップS510〜S514、図30のステップS540〜S544が、それぞれプレイヤによるタッチ操作の継続を確認するための処理である。
ところで、本発明に係る人体通信は、プレイヤがゲーム装置100にタッチ操作を行なっている期間だけ可能となるので、人体通信におけるエラーの有無を監視するだけで、同様の確認処理を行なうこともできる。そのため、上述したようなオブジェクト交換等処理(図23,図24,図26,図27,図29,図30)におけるプレイヤによるタッチ操作の継続を確認する処理を行なわないようにしてもよい。
[実施の形態1の第2変形例]
上述の実施の形態1に従うオブジェクト交換等処理(図24,図27,図30)は、オブジェクト情報の送受信中にプレイヤによるタッチ操作の継続を確認する処理(図24のステップS156〜S160、図27のステップS320〜S324、図30のステップS540〜S544に相当)を含むが、オブジェクト情報の送受信の開始前に、プレイヤによるタッチ操作の継続を確認してもよい。以下、このような処理手順について、図33および図34を参照して説明する。なお、以下の示すフローチャートに含まれるステップのうち、上述したフローチャートに記載のステップと実質的に同一であるものについては、同一のステップ番号を付す。
<交換処理フロー>
図33は、この発明の実施の形態1の第2変形例に従う交換処理の手順を示すフローチャートである。なお、図33のフローチャートに示す処理は、上述した実施の形態1に従う図24のフローチャートに示す処理の代替として実行されるものであり、図33のフローチャートの処理は、図23に示すフローチャートの処理に引き続いて実行される。
図33を参照して、まずステップS132では、CPUコア42は、交換操作をプレイヤにガイドするために、「開始します。タッチを継続してください」といったメッセージを表示する。そして、処理はステップS156に移る。
ステップS156,S158,S160,S168の各処理は、図24に示すフローチャート内の同一符号のステップにおける処理に相当し、両ゲーム装置100でタッチパネル20に対するプレイヤによるタッチ操作が継続しているか否かが判断される。そして、タッチパネル20に対するタッチ操作が継続しており、かつ人体通信に何らかのエラーも発生していない場合、すなわちステップS168においてNOの場合には、処理はステップS172に移る。
ステップS172では、CPUコア42は、プレイヤによるタッチ操作が所定期間を超えて継続しているか否かを判断する。プレイヤによるタッチ操作が所定期間を超えて継続していない場合、すなわちステップS172においてNOの場合には、処理はステップS166に移る。一方、プレイヤによるタッチ操作が所定期間を超えて継続している場合、すなわちステップS172においてYESの場合には、処理はステップS174に移る。
ステップS166では、CPUコア42は、交換処理のキャンセル操作をプレイヤにガイドするために、「手を離せばキャンセルできます」といったメッセージを表示する。同時に、オブジェクト情報の送信中であることを示すバー表示(進行表示)を行なってもよい。そして、処理はステップS156に戻る。
ステップS174では、CPUコア42は、オブジェクト情報の送受信を開始する。以下、図24のステップS134〜S154と実質的に同一の処理が実行される。
図34は、この発明の実施の形態1の第2変形例に従うあげる処理の手順を示すフローチャートである。なお、図34のフローチャートに示す処理は、上述した実施の形態1に従う図27のフローチャートに示す手順の代替として実行されるものであり、図26に示すフローチャートの処理に引き続いて実行される。
<あげる処理フロー>
図34を参照して、まずステップS332では、CPUコア42は、交換操作をプレイヤにガイドするために、「開始します。タッチを継続してください」といったメッセージを表示する。そして、処理はステップS342に移る。
ステップS342,S344,S346,S348,S352の各処理は、図27に示すフローチャート内の同一符号のステップにおける処理に相当し、両ゲーム装置100でタッチパネル20に対するタッチ操作が継続しているか否かが判断される。そして、タッチパネル20に対するタッチ操作が継続しており、かつ人体通信に何らかのエラーも発生していない場合、すなわちステップS352においてNOの場合には、処理はステップS356に移る。
ステップS356では、CPUコア42は、プレイヤによるタッチ操作が所定期間を超えて継続しているか否かを判断する。プレイヤによるタッチ操作が所定期間を超えて継続していない場合、すなわちステップS356においてNOの場合には、処理はステップS350に移る。一方、プレイヤによるタッチ操作が所定期間を超えて継続している場合、すなわちステップS356においてYESの場合には、処理はステップS334に移る。
ステップS350では、CPUコア42は、交換処理のキャンセル操作をプレイヤにガイドするために、「手を離せばキャンセルできます」といったメッセージを表示する。同時に、オブジェクト情報の送信中であることを示すバー表示(進行表示)を行なってもよい。そして、処理はステップS342に戻る。
ステップS334では、CPUコア42は、送信対象オブジェクトについてのオブジェクト情報を相手先に送信する。以下、図27のステップS336〜S340と実質的に同一の処理が実行される。
なお、もらう処理についても、図33および図34に示すフローチャートと同様に、プレイヤによるタッチ操作の継続を確認してもよい。
[実施の形態2]
上述の実施の形態1およびその変形例では、オブジェクトに関する情報の一例として、オブジェクト自体を送受信する構成について例示したが、オブジェクトに対応付けられた数値データ(パラメータ)を送受信するようにしてよい。より具体的な一例として、図35〜図38を参照して以下説明する。
図35は、図6に示すゲーム装置100−1のLCD14で表示されるゲームシーンの一形態を示す図である。図36は、図6に示すゲーム装置100−2のLCD14で表示されるゲームシーンの一形態を示す図である。図35および図36には、オブジェクトに対応付けられた数値データ(パラメータ)を送受信する形態の一例として、あるプレイヤが獲得しているキャラクター(オブジェクト)の生命力(HP:Hit Point)を別のプレイヤが獲得しているキャラクター(オブジェクト)の生命力として与えるようなゲーム進行のシーンを示す。なお、図35および図36のシーンが表示する前に、図8に示すようなメニューで各プレイヤがHPを「あげる」、もしくはHPを「もらう」をそれぞれ選択しているものとする。
図35に示すように、ゲーム装置100−1のLCD14には、ゲーム装置100−1のプレイヤが獲得済キャラクターのうち1つ(オブジェクトOBJ1)が、その名称とともに表示される。また、ゲーム装置100−1のLCD14には、当該オブジェクトOBJ1のHPの数値がバー表示IND1ともに表示される(図35の例では「HP80」)。さらに、ゲーム装置100−1のLCD14には、相手先のゲーム装置100−2で選択されたオブジェクトに対してHPを与える処理を開始するための「あげる」ボタンとしてのオブジェクトOBJ21が表示される。
一方、図36に示すように、ゲーム装置100−2のLCD14には、ゲーム装置100−2のプレイヤが獲得済キャラクターのうち1つ(オブジェクトOBJ4)が、その名称とともに表示される。また、ゲーム装置100−2のLCD14には、当該オブジェクトOBJ4のHPの数値がバー表示IND2ともに表示される(図36の例では「HP20」)。さらに、ゲーム装置100−2のLCD14には、相手先のゲーム装置100−1で選択されたオブジェクトからHPを受ける処理を開始するための「もらう」ボタンとしてのオブジェクトOBJ22が表示される。
また、ゲーム装置100−1のLCD14には、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−2)のプレイヤ名「XXX」および「オブジェクトAAAのHPをあげることができます」といったメッセージMSS30が表示される。同様に、ゲーム装置100−2のLCD14には、操作をプレイヤにガイドするために、人体通信の相手先(ゲーム装置100−1)のプレイヤ名「YYY」および「オブジェクトDDDにHPをもらうことができます」といったメッセージMSS32が表示される。
プレイヤが、ゲーム装置100−1において「あげる」ボタンOBJ21(図35)を選択(タッチ操作)するとともに、ゲーム装置100−2において「もらう」ボタンOBJ22(図36)を選択(タッチ操作)すると、後述するような人体通信によって、ゲーム装置100の間で、選択されたオブジェクトに対応付けられたパラメータが交換される。すなわち、ゲーム装置100−1で選択されたオブジェクトのHPの値がゲーム装置100−2へ順次送信される。すると、ゲーム装置100−1で選択されたオブジェクトのHPが送信された量だけ減少し、ゲーム装置100−2で選択されたオブジェクトのHPが同じ量だけ増加する。
ゲーム装置100−1からゲーム装置100−2へのHP(パラメータ)の移動中には、それぞれ図37および図38のようなシーンが表示される。
図37は、図35に示すゲームシーンにおいてHPをあげる処理中のゲームシーンの一形態を示す図である。図38は、図36に示すゲームシーンにおいてHPをもらう処理中のゲームシーンの一形態を示す図である。
図37に示すように、ゲーム装置100の間でHPが移動する処理が実行される期間において、HPをあげる側のゲーム装置100−1のLCD14には、「オブジェクトAAAのHPをあげています」というメッセージMSS34が表示されるとともに、HPの値の更新に伴って、バー表示IND1が低下するようにアニメーション表示される。
一方、図38に示すように、HPをもらう側のゲーム装置100−2のLCD14には、「オブジェクトDDDにHPをもらっています」というメッセージMSS36が表示されるとともに、HPの値の更新に伴って、バー表示IND2が上昇するようにアニメーション表示される。
なお、本実施の形態に従うゲーム装置100の構造などについては、図1〜図5と同様であるので、詳細な説明は繰返さない。
<全体処理手順>
まず、図35〜図38に示すようなゲーム進行を実現するための全体処理手順について、図39を参照して説明する。
図39は、この発明の実施の形態2に従うゲームの全体処理手順を示すフローチャートである。図39に示す各ステップは、代表的に、CPUコア42が、メモリカード26に記憶されたゲームプログラムをRAM48に読み出して実行することで実現される。
図39を参照して、まず、電源が投入、あるいはスタートボタンが押下されると、CPUコア42は、ステップS2において初期処理を実行する。より具体的には、CPUコア42は、ゲーム処理で使用される変数やフラグの初期化、およびバッファやレジスタのクリアなどを行なう。初期処理が完了すると、処理はステップS4に移る。
ステップS4では、CPUコア42は、プレイヤの指示に従って、予め記憶されているキャラクター(オブジェクト)のうちいずれかを選択する(ステップS4)。すなわち、プレイヤは、ゲームプレイで使用したい好みのキャラクターを選択する。キャラクターの選択が完了すると、処理はステップS6に移る。
ステップS6では、CPUコア42は、プレイヤの操作に従って、ステップS4において選択したキャラクターを用いたゲームを進行する(ステップS6)。ステップS6のゲーム進行中において、ステップS9の判断がなされる。
ステップS9では、CPUコア42は、ゲーム進行によっていずれかのオブジェクトに対応付けられたパラメータが変更されたか否かを判断する。ゲーム進行によっていずれかのオブジェクトに対応付けられたパラメータが変更された場合、すなわちステップS9においてYESの場合には、処理はステップS11に移る。一方、ゲーム進行によっていずれかのオブジェクトに対応付けられたパラメータが変更されていない場合、すなわちステップS9においてNOの場合には、ステップS11をスキップして処理はステップS12に移る。
ステップS11では、CPUコア42は、獲得済オブジェクト情報記憶領域48c(図14)に記憶された、対象のオブジェクトに対応付けられたオブジェクトのパラメータを変更後の値に更新する。たとえば、RPGの戦闘シーンなどにおいて、キャラクターのHPが減少したような場合には、対応付けられたパラメータ(図16参照)の値が更新される。その後、処理はステップS12に移る。
ステップS12,S14,S16,S20,S22,S30では、図17に示すフローチャート内の同一符号のステップと実質的に同一の処理が実行される。そして、プレイヤがメニューから「あげる」を選択した場合、すなわちステップS20においてYESの場合には、処理はステップS27に移る。また、プレイヤがメニューから「もらう」を選択した場合、すなわちステップS22においてYESの場合には、処理はステップS29に移る。
ステップS27では、CPUコア42は、他のゲーム装置100との間でオブジェクトに対応付けられた数値データ(パラメータ)を移動する処理(あげる処理)を実行する。ステップS27のあげる処理の詳細は、図41に示すフローチャートに従う。また、ステップS29では、CPUコア42は、他のゲーム装置100との間でオブジェクトに対応付けられた数値データ(パラメータ)を受入れる処理(もらう処理)を実行する。ステップS29のもらう処理の詳細は、図42に示すフローチャートに従う。
<あげる/もらう処理(パラメータ)シーケンス>
一方のゲーム装置100から他方のゲーム装置への数値データの移動は、連続的に行なわれることが好ましい。すなわち、見かけ上、プレイヤがタッチ操作を行なっている時間に略比例した数値が移動するように構成することが好ましい。そのため、本実施の形態においては、一方のゲーム装置100から所定の数値データ(たとえば、最小単位ずつ)が他方のゲーム装置100へ周期的に送信されるとともに、この送受信毎に送信元のゲーム装置におけるパラメータおよび送信先のゲーム装置における対応するパラメータが順次更新される。このような処理を採用することで、プレイヤがどのタイミングで処理を中断しても(タッチを離しても)、ゲーム装置間での同期(この場合には、あげたHPの値ともらったHPの値が常に一致すること)を保つことができる。
図40は、この発明の実施の形態2に従うゲーム装置100間で実行されるあげる/もらう処理(パラメータ)に係るシーケンス図である。なお、図40に示すシーケンスは、図18に示す人体通信を確立するためのシーケンスに続いて、実行される。
図40を参照して、まず、対象オブジェクトのパラメータの送信に先立って、ゲーム装置100−1および100−2からは、それぞれのプレイヤがタッチ操作中であることを確認するためのパケット(タッチ操作中を示すパケット)が相手先へ送信される(シーケンスSQ20a,SQ20b)。続いて、プレイヤの操作によって対象となるオブジェクトがそれぞれ確定すると、ゲーム装置100−1および100−2は、各装置でのオブジェクトの確定を通知するためのオブジェクト確定信号を相手先へそれぞれ送信する(シーケンスSQ22a,SQ22b)。
それぞれの確定信号の送信後、シーケンスSQ60,SQ62,SQ64a,SQ64bを1単位とするパラメータのあげる/もらう処理が繰返し実行される。具体的には、あげる側のゲーム装置100−1は、対象となるオブジェクトに対応付けられたパラメータの変更量(パラメータ変更量)をもらう側のゲーム装置100−2へ送信する(ステップSQ60)。このパラメータの変更量を受信したゲーム装置100−2は、受信確認をゲーム装置100−1へ返信する(シーケンスSQ62)。
続いて、ゲーム装置100−1およびゲーム装置100−2は、それぞれ送受信したパラメータ変更量の分だけ選択オブジェクトに対応付けられたパラメータの値を更新する(シーケンスSQ64a,SQ64b)。すなわち、ゲーム装置100−1およびゲーム装置100−2は、各自の獲得済オブジェクト情報記憶領域48cに記憶されたパラメータの値をパラメータ変更量だけ減算/加算した値に書き換える。
このように選択オブジェクトに対応付けられた数値データの送信毎、および他のゲーム装置から送信される数値データの受信毎に、各ゲーム装置100のRAM48に記憶された対応するパラメータ(情報)が順次更新される。
そして、プレイヤがゲーム装置100−1およびゲーム装置100−2に対するタッチ操作が継続している限りにおいて、すなわち両ゲーム装置間の人体通信が確立されている限りにおいて、シーケンスSQ60,SQ62,SQ64a,SQ64bの処理が繰返し実行される。
このように、対象となるオブジェクトに対応付けられたパラメータの変更量の送信(ステップSQ60)と、選択オブジェクトに対応付けられたパラメータの値の更新とは、人体通信が確立している期間において、交互に連続的に実行される。
<あげる処理(パラメータ)フロー>
図41は、この発明の実施の形態2に従うあげる処理(パラメータ)の手順を示すフローチャートである。なお、図41に示すフローチャートは、図39に示すフローチャートのステップS27の詳細な処理を示すものである。このフローチャートに示された処理は、2つのゲーム装置100の一方において実行される。
図41を参照して、まず、図26に示すステップS300〜S330と実質的に同一の処理が実行される。これらの処理については、上述したので詳細な説明は繰返さない。その後、処理はステップS332に移る。
ステップS332では、CPUコア42は、あげる処理の操作をプレイヤにガイドするために、「開始します。タッチを継続してください」といったメッセージを表示する。引き続くステップS335では、CPUコア42は、送信対象オブジェクトについてのパラメータ変更量を相手先のゲーム装置100へ送信する(図40のシーケンスSQ60参照)。さらに引き続くステップS337では、CPUコア42は、送信対象オブジェクトについてのパラメータ変更量の送信が完了したか否かを判断する。送信対象オブジェクトについてのパラメータ変更量の送信が完了した場合、すなわちステップS337においてYESの場合、処理はステップS339に移る。一方、送信対象オブジェクトについてのパラメータ変更量の送信が完了していない場合、すなわちステップS337においてNOの場合、処理はステップS335に戻る。
ステップS339では、CPUコア42は、送信対象オブジェクトについてのパラメータ変更量の送信完了通知を相手先のゲーム装置100へ送信する。引き続くステップS341では、CPUコア42は、RAM48の獲得済オブジェクト情報記憶領域48cに記憶された送信対象オブジェクトについてのパラメータの値を、パラメータ変更量だけ減算した値に更新する。
以下、ステップS342〜S348の各処理は、パラメータ更新の終了を判断するための処理である。具体的には、ステップS342,S344の処理は、プレイヤ操作の検出が途切れた場合に、パラメータ更新を中止するための処理である。また、ステップS352の処理は、人体通信が途切れた場合に、パラメータ更新を中止するための処理である。
具体的には、ステップS342では、CPUコア42は、自装置においてタッチパネル20に対するタッチ操作がされているか否かを判断する。タッチパネル20に対するタッチ操作がされている場合、すなわちステップS342においてYESの場合には、処理はステップS344に移る。一方、タッチパネル20に対するタッチ操作がされていない場合、すなわちステップS342においてNOの場合には、処理はリターンする。
ステップS344では、CPUコア42は、タッチオンフラグ値を自装置でのタッチ操作中であることを示す「オン」にセットし、当該タッチオンフラグ値を含むパケットを相手先のゲーム装置100に送信する。タッチオンフラグ値を含むパケットの送信後、処理はステップS346に移る。
ステップS346では、CPUコア42は、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」、すなわち相手先でタッチ操作中であることを示す値であるか否かを判断する。相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」である場合、すなわちステップS346においてYESの場合、処理はステップS350に移る。一方、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」でない場合、すなわちステップS346においてNOの場合、処理はリターンする。
ステップS350では、CPUコア42は、あげる処理のキャンセル操作をプレイヤにガイドするために、「手を離せばキャンセルできます」といったメッセージを表示する。引き続くステップS352では、CPUコア42は、相手先のゲーム装置100との間で確立された人体通信にエラーが発生しているか否かを判断する。この人体通信にエラーが発生しているか否かの判断は、通信エラーフラグ(図22のシーケンスSQ22参照)に基づいてなされる。人体通信にエラーが発生していない場合、すなわちステップS352においてNOの場合には、処理はステップS335に戻る。一方、人体通信にエラーが発生している場合、すなわちステップS352においてYESの場合には、処理はリターンする。
<もらう処理(パラメータ)フロー>
図42は、図39に示すフローチャートのステップS29のもらう処理(パラメータ)の詳細を示すフローチャートである。なお、図42に示すフローチャートは、図39に示すフローチャートのステップS29の詳細な処理を示すものである。このフローチャートに示された処理は、2つのゲーム装置100の一方において実行される。
図42を参照して、まず、図29に示すステップS500〜S530と実質的に同一の処理が実行される。これらの処理については、既に説明したので、詳細な説明は繰返さない。その後、処理はステップS532に移る。
ステップS532では、CPUコア42は、交換操作をプレイヤにガイドするために、「開始します。タッチを継続してください」といったメッセージを表示する。引き続くステップS535では、CPUコア42は、相手先のゲーム装置100から受信対象オブジェクトについてのパラメータ変更量の受信を行なう。なお、相手先のゲーム装置100から受信したパラメータ変更量は、RAM48の送受信データ一時記憶領域48eに記憶される。そして、処理はステップS537に移る。
ステップS537では、CPUコア42は、相手先のゲーム装置100から受信対象オブジェクトについてのパラメータ変更量の送信完了通知を受信が完了したか否かを判断する。パラメータ変更量の送信完了通知の受信が完了している場合、すなわちステップS537においてYESの場合には、処理はステップS539に移る。一方、パラメータ変更量の送信完了通知の受信が完了していない場合、すなわちステップS537においてNOの場合には、処理はステップS535に戻る。
ステップS539では、CPUコア42は、送信対象オブジェクトについてのパラメータ変更量の受信確認を相手先のゲーム装置100へ送信する。引き続くステップS541では、CPUコア42は、RAM48の獲得済オブジェクト情報記憶領域48cに記憶された送信対象オブジェクトについてのパラメータの値を、パラメータ変更量だけ加算した値に更新する。その後、処理はステップS540に移る。
引き続くステップS540〜ステップS552の処理は、パラメータ更新の終了を判断するための処理である。これらの処理については、上述の図41のステップS342〜ステップS352と同様であるので、詳細な説明は繰返さない。
[実施の形態2の第1変形例]
上述の実施の形態2では、対象となるオブジェクトに対応付けられたパラメータ変更量の送信と、対応するパラメータの更新とが交互に繰返される構成について例示した。このような形態に代えて、プレイヤによるタッチ操作が継続している期間中、対象となるオブジェクトに対応付けられたパラメータ変更量だけを連続的に更新した上で、プレイヤによるタッチ操作が外れた後に、両ゲーム装置で対応するパラメータを更新するようにしてもよい。以下、このような処理について例示する。
<あげる/もらう処理(パラメータ)シーケンス>
図43は、この発明の実施の形態2の第1変形例に従うゲーム装置100間で実行されるあげる/もらう処理(パラメータ)に係るシーケンス図である。なお、図41に示すシーケンスは、図18に示す人体通信を確立するためのシーケンスに続いて、実行される。
図41を参照して、まず、対象オブジェクトのパラメータの送信に先立って、ゲーム装置100−1および100−2からは、それぞれのプレイヤがタッチ操作中であることを確認するためのパケット(タッチ操作中を示すパケット)が相手先へ送信される(シーケンスSQ20a,SQ20b)。続いて、プレイヤの操作によって対象となるオブジェクトがそれぞれ確定すると、ゲーム装置100−1および100−2は、オブジェクトの確定を通知するためのオブジェクト確定信号を相手先へそれぞれ送信する(シーケンスSQ22a,SQ22b)。
それぞれの確定信号の送信後、ゲーム装置100−1からは、プレイヤによるタッチ操作が継続している期間中、パラメータ変更量がゲーム装置100−2に向けて周期的に送信される(シーケンスSQ66)。この周期的に送信されるパラメータ変更量は、時間の経過とともに増大し、プレイヤがタッチ操作を継続した期間に応じたパラメータ値が順次送信されることになる。このパラメータ変更量の増加量は、タッチ操作の期間に比例した値でもよいし、加速度的に大きくなるようにしてもよい。
その後、プレイヤがタッチ操作をやめると、すなわちプレイヤの人体がLCD14から離れると人体通信にエラーが発生する。この人体通信のエラー発生に伴って、通信エラーフラグがオンになるので、この通信エラーフラグの値の変化をトリガーとして、ゲーム装置100−1および100−2は、最新の(最も新しく送信または受信された)パラメータ変更量の分だけ選択オブジェクトに対応付けられたパラメータの値をそれぞれ更新する(シーケンスSQ68a,SQ68b)。すなわち、ゲーム装置100−1およびゲーム装置100−2は、各自の獲得済オブジェクト情報記憶領域48cに記憶されたパラメータの値を最新のパラメータ変更量だけ減算/加算した値に書き換える。
<あげる処理(パラメータ)フロー>
図44は、この発明の実施の形態2の第1変形例に従うあげる処理(パラメータ)の手順を示すフローチャートである。なお、図44に示すフローチャートは、図39に示すフローチャートのステップS27の詳細な処理の別形態を示すものである。このフローチャートに示された処理は、2つのゲーム装置100の一方において実行される。
図44を参照して、まず、図26に示すステップS300〜S330と実質的に同一の処理が実行される。これらの処理については、既に説明したので、詳細な説明は繰返さない。その後、処理はステップS332に移る。
ステップS332では、CPUコア42は、交換操作をプレイヤにガイドするために、「開始します。タッチを継続してください」といったメッセージを表示する。引き続くステップS360では、CPUコア42は、送信対象オブジェクトについてのパラメータ変更量を初期値である「0」に設定する。引き続くステップS362では、CPUコア42は、自装置においてタッチパネル20に対するタッチ操作がされているか否かを判断する。タッチパネル20に対するタッチ操作がされている場合、すなわちステップS362においてYESの場合には、処理はステップS364に移る。一方、タッチパネル20に対するタッチ操作がされていない場合、すなわちステップS362においてNOの場合には、処理はステップS341に移る。
ステップS364では、CPUコア42は、自装置のタッチオンフラグ値をタッチ操作中であることを示す「オン」にセットし、当該タッチオンフラグ値を含むパケットを相手先のゲーム装置100に送信する(図43のシーケンスSQ66参照)。タッチオンフラグ値を含むパケットの送信後、処理はステップS366に移る。
ステップS366では、CPUコア42は、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」、すなわち相手先でタッチ操作中であることを示す値であるか否かを判断する。相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」である場合、すなわちステップS366においてYESの場合、処理はステップS352に移る。一方、相手先から受信したパケットに含まれるタッチオンフラグ値が「オン」でない場合、すなわちステップS366においてNOの場合、処理はステップS341に移る。
ステップS352では、CPUコア42は、相手先のゲーム装置100との間で確立された人体通信にエラーが発生しているか否かを判断する。この人体通信にエラーが発生しているか否かの判断は、通信エラーフラグ(図22のシーケンスSQ22参照)に基づいてなされる。人体通信にエラーが発生していない場合、すなわちステップS352においてNOの場合には、処理はステップS338に移る。一方、人体通信にエラーが発生している場合、すなわちステップS352においてYESの場合には、処理はステップS341に移る。
ステップS368では、CPUコア42は、現時点のパラメータ変更量が対象オブジェクトに対応付けられているパラメータ以上であるか否かを判断する。現時点のパラメータ変更量が対象オブジェクトに対応付けられているパラメータ以上である場合、ステップS368においてYESの場合には、処理はステップS341に移る。一方、現時点のパラメータ変更量が対象オブジェクトに対応付けられているパラメータ未満である場合、ステップS368においてNOの場合には、処理はステップS370に移る。
ステップS370では、CPUコア42は、パラメータ変更量を所定値だけ増加させる。引き続くステップS372では、CPUコア42は、増加後のパラメータ変更量を相手先のゲーム装置100に送信する。引き続くステップS374では、CPUコア42は、交換操作をプレイヤにガイドするために、増加後のパラメータ変更量(あげるパラメータ量)の値とともに、「手を離せば確定できます」といったメッセージを表示する。そして、処理はステップS362に戻る。
S341では、CPUコア42は、RAM48の獲得済オブジェクト情報記憶領域48cに記憶された送信対象オブジェクトについてのパラメータの値を、パラメータ変更量だけ減算した値に更新する。すなわち、対象オブジェクトに対応付けられたパラメータに対する更新量は、ステップS352において人体通信にエラーが発生した時点でのパラメータ変更量として確定する。ステップS341の後、処理はリターンする。
<もらう処理フロー(パラメータ)>
図45は、この発明の実施の形態2の第1変形例に従うもらう処理(パラメータ)の手順を示すフローチャートである。なお、図45に示すフローチャートは、図39に示すフローチャートのステップS29の詳細な処理の別形態を示すものである。このフローチャートに示された処理は、2つのゲーム装置100の一方において実行される。
図45を参照して、まず、図29に示すステップS500〜S530と実質的に同一の処理が実行される。これらの処理については、既に説明したので、詳細な説明は繰返さない。その後、処理はステップS532に移る。
ステップS532では、CPUコア42は、交換操作をプレイヤにガイドするために、「開始します。タッチを継続してください」といったメッセージを表示する。引き続くステップS535では、CPUコア42は、相手先のゲーム装置100から受信対象オブジェクトについてのパラメータ変更量の受信を行なう。なお、相手先のゲーム装置100から受信したパラメータ変更量は、RAM48の送受信データ一時記憶領域48eに記憶される。引き続くステップS560では、CPUコア42は、交換操作をプレイヤにガイドするために、増加後のパラメータ変更量(あげるパラメータ量)の値とともに、「手を離せば確定できます」といったメッセージを表示する。そして、処理はステップS552に移る。
ステップS552では、CPUコア42は、相手先のゲーム装置100との間で確立された人体通信にエラーが発生しているか否かを判断する。この人体通信にエラーが発生しているか否かの判断は、通信エラーフラグ(図22のシーケンスSQ22参照)に基づいてなされる。人体通信にエラーが発生していない場合、すなわちステップS552においてNOの場合には、処理はステップS535に戻る。一方、人体通信にエラーが発生している場合、すなわちステップS552においてYESの場合には、処理はステップS539に移る。
ステップS539では、CPUコア42は、RAM48の獲得済オブジェクト情報記憶領域48cに記憶された送信対象オブジェクトについてのパラメータの値を、パラメータ変更量だけ加算した値に更新する。すなわち、対象オブジェクトに対応付けられたパラメータに対する更新量は、ステップS552において人体通信にエラーが発生した時点でのパラメータ変更量として確定する。ステップS539の後、処理はリターンする。
[実施の形態3]
上述の実施の形態1およびその変形例、ならびに実施の形態2およびその変形例では、基本的に人体通信のみを用いてデータ通信を行なう構成について例示した。これに対して、実施の形態3および後述する実施の形態4では、人体通信および無線通信を組み合わせてデータ通信を行なう構成について例示する。
図46は、この発明の実施の形態3に従うゲーム装置100の間で人体通信を用いたゲームをプレイするプレイヤの操作態様の一例を示す図である。図46に示すように、本実施の形態に従うゲーム装置100は、人体通信および無線通信により他のゲーム装置100との間でデータ通信を行なう。
本実施の形態に従うゲーム装置100の構造などについては、図1〜図5と同様であるので、詳細な説明は繰返さない。また、以下の説明では、本実施の形態に従うゲーム装置において、図7〜図15に示すようなオブジェクト情報を交換するゲーム処理を実現する構成について例示するが、図35〜図38に示すようなオブジェクトに対応付けられたパラメータを交換するゲーム処理を同様に実現できることは言うまでもない。
<全体処理シーケンス>
まず、本実施の形態に従うゲーム装置100間で実行されるオブジェクト交換等処理のシーケンスの一例について説明する。本実施の形態に従うオブジェクト交換等処理では、LCD14に表示中のいずれかのオブジェクトに対するプレイヤのタッチ操作がタッチパネル20によって検出されると、当該選択されたオブジェクトに関する情報の送受信を実行するための条件設定が人体通信を用いて実行される。続いて、決定された設定条件に従って、より高い伝送速度をもつ無線通信を用いて、当該選択オブジェクトに関する情報の送受信が行われる。このように、人体通信を用いてデータ通信を実行するための条件設定を行なうことで、対象となるゲーム装置100の間には、確実に伝搬経路が形成されるので、複雑な処理を経ることなく、必要な条件設定を行なうことができる。そして、より伝送速度の高い無線通信を用いることで、迅速にデータ送受信を行なうことができる。
図47は、この発明の実施の形態3に従うゲーム装置100間で実行されるオブジェクト交換等処理のシーケンス図である。
図47を参照して、ゲーム装置100−1および100−2において、「交換処理」「もらう処理」「あげる処理」のいずれかが選択されており、かつ人体通信が確立していないとする。この状態において、たとえば、プレイヤがゲーム装置100−1に対してタッチ操作を行なうと、ゲーム装置100−1の人体通信部56(図3)がパケットの送受信を開始する。そして、人体通信を用いて、図18のシーケンス図のシーケンスSQ2,SQ4,SQ6,SQ8,SQ10a,SQ10bと同様の各シーケンス処理が実行される。なお、この例では、ゲーム装置100−1がマスターに設定されるとともに、ゲーム装置100−2がスレーブに設定される。
続いて、同じく人体通信を用いて、図20のシーケンス図のシーケンスSQ20a,SQ20b,SQ22a,SQ22bと同様の各シーケンス処理が実行される。すなわち、シーケンスSQ22aおよびSQ22bの処理によって、両者間での送受信の対象となるオブジェクトを特定するために必要な条件設定が完了する。
さらに、同じく人体通信を用いて、両ゲーム装置100の無線通信部66(図3)が無線通信を確立するための無線設定が送信される。図47に示す例では、予めマスターに設定されたゲーム装置100−1が無線設定をゲーム装置100−2へ送信する(シーケンスSQ70)。
なお、無線通信部66がIEEE802.11規格に準拠した方式を採用する場合には、このような条件設定には、通信相手を特定するためのSSID(Service Set Identifier;サービスセット識別子)や秘匿通信を行なうための鍵情報の一例であるWEP(Wired Equivalent Privacy)などが含まれる。
ゲーム装置100−2は、ゲーム装置100−1からの無線設定の受信を完了すると、無線設定受信確認をゲーム装置100−1へ返信する(シーケンスSQ72)。このシーケンスSQ70およびSQ72の情報のやり取りによって、ゲーム装置100−1とゲーム装置100−2との間で無線通信を行なうための条件設定がなされる。
このようなシーケンスに従って、タッチパネル20によってLCD14に表示中のいずれかのオブジェクトの選択が検出されると、当該選択オブジェクトに関する情報の送信、および他のゲーム装置100から送信される情報の受信の少なくとも一方を実行するための条件設定が人体通信によって行なわれる。
続いて、ゲーム装置100−1および100−2は、これまでの人体通信に加えて、無線通信を確立する。すなわち、ゲーム装置100−1および100−2は、シーケンスSQ70およびSQ72によってやり取りされた条件設定に従って、両者の間の無線チャネルを確立し、無線通信を行なう。なお、上述したように鍵を配送する場合には、秘匿通信を行なうことが好ましい。
無線通信の確立後、ゲーム装置100−1とゲーム装置100−2とは、対象オブジェクトのオブジェクト情報の送受信を開始する。具体的には、ゲーム装置100−1,100−2は、無線通信を用いて、それぞれ対象となるオブジェクトのオブジェクト情報を相手先へ送信する(シーケンスSQ24a,24b)とともに、オブジェクト情報の送信が完了すると、さらに送信完了信号を相手先へ送信する(シーケンスSQ26a,SQ26b)。
続いて、ゲーム装置100−1,100−2は、相手先へのオブジェクト情報の送信が完了すると、自装置のRAM48の獲得済オブジェクト情報記憶領域48cから、相手先のゲーム装置100へ送信したオブジェクト情報を削除する(シーケンスSQ28a,SQ28b)。さらに、ゲーム装置100−1,100−2は、相手先から受信したオブジェクト情報を、自装置のRAM48の獲得済オブジェクト情報記憶領域48cに追加する(シーケンスSQ30a,SQ30b)。なお、相手先から送信されるオブジェクト情報は、各ゲーム装置100の送受信データ一時記憶領域48e(図3)に一時的に記憶される。そして、上述のシーケンスSQ28a,SQ28bおよびSQ30a,SQ30bのように、対象のオブジェクトに関する情報の送信完了後、または他のゲーム装置から送信される情報の受信完了後に、自装置に記憶されたオブジェクトのオブジェクト情報が更新される。
このように、人体通信を用いて決定された条件設定に従って、無線通信部66(図3)を用いて、選択オブジェクトに関する情報の送信、および他のゲーム装置100から送信される情報の受信が実行される。
<交換処理フロー>
図48は、この発明の実施の形態3に従う交換処理の手順を示すフローチャートである。なお、図48に示すフローチャートは、図17に示すフローチャートのステップS24の詳細な処理の別形態を示すものである。なお、図48に示すフローチャートは、交換処理を行なう2つのゲーム装置100−1,100−2の各々において実行される。
図48は、図23に示すフローチャートにおいて、ステップS180〜S192の処理を追加したものであり、ステップS180〜S192の処理は、ステップS130の実行に引き続いて実行される。なお、ステップS100〜S130までの処理は、図23での処理と同様であるので、詳細な説明は繰返さない。
ステップS180では、CPUコア42は、自装置のマスターフラグ(図25のステップS210参照)がオンであるか否かを判断する。すなわち、CPUコア42は、自装置がマスターとして機能しているか否かを判断する。自装置のマスターフラグがオンである場合、すなわちステップS180においてYESの場合には、処理はステップS182に移る。一方、自装置のマスターフラグがオンでない場合、すなわちステップS180においてNOの場合には、処理はステップS188に移る。
ステップS182では、CPUコア42は、相手先のゲーム装置100との無線通信に使用するための無線設定(SSIDやWEPなど)を決定する。なお、これらの無線設定は、予め定められた複数の設定値がランダムに選択されるようにしてもよい。引き続くステップS184では、CPUコア42は、人体通信を用いて、決定した無線設定を相手先のゲーム装置100へ送信する(図47のシーケンスSQ70参照)。さらに引き続くステップS186では、CPUコア42は、相手先のゲーム装置100から無線設定受信確認を受信したか否かを判断する。相手先のゲーム装置100から無線設定受信確認を受信した場合、すなわちステップS186においてYESの場合には、処理は図24に示すステップS132に移る。一方、相手先のゲーム装置100から無線設定を受信していない場合、すなわちステップS186においてNOの場合には、処理はステップS186に戻る。
ステップS188では、CPUコア42は、相手先のゲーム装置100から無線設定を受信したか否かを判断する。相手先のゲーム装置100から無線設定を受信した場合、すなわちステップS188においてYESの場合には、処理はステップS190に移る。一方、相手先のゲーム装置100から無線設定を受信していない場合、すなわちステップS188においてNOの場合には、処理はステップS188に戻る。
ステップS190では、CPUコア42は、人体通信を用いて、受信した無線設定に応じた無線設定受信応答を相手先のゲーム装置100へ送信する(図47のシーケンスSQ72参照)。引き続くステップS192では、CPUコア42は、受信した無線設定を記憶する。そして、処理は図24に示すステップS132に移る。
特に、図48のフローチャートの処理に引き続く図24の処理では、上述した他の実施の形態での処理とは異なり、図48のステップS182またはステップS192において定められる無線設定に従って、無線通信を用いてゲーム装置100間のデータ通信が行なわれる。なお、無線通信を開始する場合には、LCD14あるいはインジケータなどによって、無線通信を行っていることを表示するインジケータを点灯することが好ましい。
なお、図47および図48には、交換処理に係るシーケンスおよびフローチャートを示したが、上述したようなあげる/もらう処理においても同様に適用できることは言うまでもない。すなわち、あげる/もらう処理では、図47に示すシーケンスおよび図48に示すフローチャートのうち、一方のゲーム装置100から他方のゲーム装置100へのオブジェクト情報の送信、あるいは受信に係る処理のみが実行される。
[実施の形態3の第1変形例]
上述の実施の形態3では、対象オブジェクトのオブジェクト情報が常に無線通信により送受信される構成について例示したが、対象オブジェクトのオブジェクト情報が相対的に小さい場合には、無線通信を用いることなく、人体通信のみでオブジェクト情報を送受信してもよい。以下、対象オブジェクトに関する情報を他のゲーム装置へ送信する前に、対象オブジェクトに関する情報のデータ量を判断し、当該情報のデータ量が所定のデータ量より小さい場合には、無線通信に代えて、人体通信によって対象オブジェクトに関する情報を送信する構成について例示する。
<交換処理フロー>
図49は、この発明の実施の形態3の第1変形例に従う交換処理の手順を示すフローチャートである。なお、図49に示すフローチャートは、図17に示すフローチャートのステップS24の詳細な処理の別形態を示すものである。なお、図49に示すフローチャートは、交換処理を行なう2つのゲーム装置100−1,100−2の各々において実行される。
図49は、ステップS194〜S198およびステップS180〜ステップS192の処理を追加したものであり、ステップS100〜ステップS124までの処理(図示しない)については、図23と同様であるので、詳細な説明は繰返さない。
図49を参照して、ステップS130に引き続くステップS194では、CPUコア42は、確定した送信対象オブジェクトのオブジェクト情報の合計サイズを算出する。より具体的には、CPUコア42は、獲得済オブジェクト情報記憶領域48cを参照し、対象オブジェクトに対応するデータ量を取得する。複数のオブジェクトが選択されている場合には、各オブジェクトに対応するデータ量を合算して、合成サイズとする。
引き続くステップS196では、CPUコア42は、算出したオブジェクト情報の合計サイズが所定値以上であるか否かを判断する。算出したオブジェクト情報の合計サイズが所定値以上である場合、すなわちステップS196においてYESの場合には、処理はステップS198に移る。一方、算出したオブジェクト情報の合計サイズが所定値以上でない場合、すなわちステップS196においてNOの場合には、処理は図24に示すステップS132に移る。
ステップS198では、無線通信によりオブジェクト情報を送信することが決定され、処理はステップS180に移る。ステップS180〜S192の処理は、図48に示すフローチャート内の同一符号のステップにおける処理に相当し、無線通信を行なうための条件設定がなされる。これらのステップにおける処理についての詳細な説明は、繰返さない。そして、処理は図24に示すステップS132に移る。
なお、無線通信によりオブジェクト情報を送信することが決定された場合(ステップS196においてYESの場合)には、図24のフローチャートに示す処理では、無線通信を用いてゲーム装置100間のデータ通信が行なわれる。
[実施の形態4]
上述の実施の形態3では、人体通信を用いて対象オブジェクトを送受信するための条件設定を行ない、続いて無線通信を用いて対象オブジェクトに関する情報を送受信する構成について例示した。一方、以下に説明する実施の形態4では、無線通信を用いて対象オブジェクトを送受信するための条件設定を行ない、続いて人体通信を用いて対象オブジェクトに関する情報を送受信する構成について例示する。
本実施の形態に従うゲーム装置100の構造などについては、図1〜図5と同様であるので、詳細な説明は繰返さない。また、以下の説明では、本実施の形態に従うゲーム装置において、図7〜図15に示すようなオブジェクト情報を交換するゲーム処理を実現する構成について例示するが、図35〜図38に示すようなオブジェクトに対応付けられたパラメータを交換するゲーム処理を同様に実現できることは言うまでもない。
なお、以下の説明では、無線通信によりデータ通信が行なわれる処理であることを明確化するために、無線通信により送受信されるパケットについては、無線パケットとも記載する。
<全体処理シーケンス>
まず、本実施の形態に従うゲーム装置100間で実行されるオブジェクト交換等処理のシーケンスの一例について説明する。本実施の形態では、プレイヤ操作に従って、いずれかのオブジェクトに関する情報の送受信を実行するための条件設定が無線通信を用いて実行され、この条件設定の完了後、両ゲーム装置100の間で人体通信を行なうための電気的な経路が形成されると、人体通信によって対象オブジェクトに関する情報が送受信される。このように、最終的に人体通信を用いて対象オブジェクトに関する情報が送受信されるので、無線通信で相手先を厳密に特定しなくとも、特定の相手先に必要な情報を確実に送信できる。
図50は、この発明の実施の形態4に従うゲーム装置100間で実行されるオブジェクト交換等処理のシーケンス図である。
図50を参照して、ゲーム装置100−1および100−2において、「交換処理」「もらう処理」「あげる処理」のいずれかが選択されており、かつ人体通信が確立していないとする。この状態において、たとえば、プレイヤがゲーム装置100−1に対してタッチ操作を行なうと、ゲーム装置100−1の無線通信部66(図3)が活性化(シーケンスSQ80a)し、無線通信を確立するための信号として、無線パケットの送受信を開始する。そして、ゲーム装置100−1は、接続可能を示す無線パケットの送信を開始する(シーケンスSQ2A)。この接続可能を示す無線パケットは、所定周期毎、あるいはランダムに決定される周期毎に送信される。
このゲーム装置100−1の無線パケットの送信開始後、プレイヤがゲーム装置100−2に対してタッチ操作を行なうと、ゲーム装置100−2の無線通信部66(図3)も活性化(シーケンスSQ80a)し、無線パケットの送受信を開始する。すると、ゲーム装置100−1から送信される接続可能を示す無線パケットは、ゲーム装置100−2により受信される。この接続可能を示す無線パケットを受信すると、ゲーム装置100−2のCPUコア42は、当該パケットに含まれるフラグ値(図19に示すModeFlagフィールドの値)が自装置での処理にマッチしているか否かを判断する(シーケンスSQ4)。より具体的には、ゲーム装置100−2のCPUコア42は、自装置が交換処理の準備段階であれば、相手先も交換処理の準備段階である場合に限って、人体通信による接続を許可する。
両装置での処理がマッチしている場合には、ゲーム装置100−2からゲーム装置100−1へ接続要求が送信される(シーケンスSQ6A)。ゲーム装置100−1は、この接続要求を受信することで、無線通信が確立されたと判断する。そして、ゲーム装置100−1は、ゲーム装置100−2へ接続確認を送信する(シーケンスSQ8A)。なお、接続要求および接続確認とともに、パケット送信元の識別番号、すなわちID(図19に示すIDの値)が送信される。そのため、ゲーム装置100−1および100−2は、それぞれ接続要求および接続確認の受信後、それぞれに含まれる相手先のIDを記憶する(シーケンスSQ10aおよびSQ10b)。
なお、図50に示すシーケンスの例では、接続可能を示すパケットを受信して接続要求を送信した側のゲーム装置(この例では、ゲーム装置100−2)を「スレーブ」とし、他方を「マスター」とする。すなわち、図50に示す例では、ゲーム装置100−1がマスターとして機能し、ゲーム装置100−2がスレーブとして機能する。なお、本明細書において「マスター」および「スレーブ」とは、主として通信処理における区別(順位)を付けるために用いる属性である。
このように、ゲーム装置100−1からの無線通信を確立するための信号に応じて、ゲーム装置100−2から発せられる応答をゲーム装置100−1が受信した場合に、無線通信が確立されたと判断される。
続いて、プレイヤの操作によって対象となるオブジェクトがそれぞれ確定すると、ゲーム装置100−1および100−2は、各自でのオブジェクトの確定を通知するためのオブジェクト確定信号を相手先へそれぞれ送信する(シーケンスSQ22a,SQ22b)。
このように、無線通信を用いて、対象となるオブジェクトに関する情報の送受信を実行するための条件設定がなされて、人体通信によりオブジェクト情報の送受信を行ない得る状態になる。
ここで、プレイヤが、ゲーム装置100−1および100−2のそれぞれにおいて、タッチ操作を行ない、ゲーム装置100−1とゲーム装置100−2との間で、プレイヤを介して人体通信を行なうための電気的な経路が形成されると、対象となるオブジェクトのオブジェクト情報の送受信が開始される。
すなわち、両ゲーム装置100の間で人体通信が確立されると、各自での対象となるオブジェクトのオブジェクト情報を相手先へそれぞれ送信する(シーケンスSQ24a,26a)とともに、オブジェクト情報の送信が完了すると、さらに送信完了信号を相手先へ送信する(シーケンスSQ24b,SQ26b)。
続いて、ゲーム装置100−1,100−2は、相手先へのオブジェクト情報の送信が完了すると、自装置のRAM48の獲得済オブジェクト情報記憶領域48cから、相手先のゲーム装置100へ送信したオブジェクト情報を削除する(シーケンスSQ28a,SQ28b)。さらに、ゲーム装置100−1,100−2は、相手先から受信したオブジェクト情報を、自装置のRAM48の獲得済オブジェクト情報記憶領域48cに追加する(シーケンスSQ30a,SQ30b)。なお、相手先から送信されるオブジェクト情報は、各ゲーム装置100の送受信データ一時記憶領域48e(図3)に一時的に記憶される。そして、上述のシーケンスSQ28a,SQ28bおよびSQ30a,SQ30bのように、対象のオブジェクトに関する情報の送信完了後、または他のゲーム装置から送信される情報の受信完了後に、自装置に記憶されたオブジェクトのオブジェクト情報が更新される。
<交換処理フロー>
図51および図52は、この発明の実施の形態4に従う交換処理の手順を示すフローチャートである。なお、図51および図52に示すフローチャートは、図17に示すフローチャートのステップS24の詳細な処理の別形態を示すものである。また、図51および図52に示すフローチャートは、交換処理を行なう2つのゲーム装置100−1,100−2の各々において実行される。また、図53は、この発明の実施の形態4に従うゲーム装置100のLCD14で表示されるゲームシーンの一形態を示す図である。
図51に示されるフローチャートは、図23に示すフローチャートにおいて、プレイヤのタッチパネル20に対するタッチ操作の有無を判断するための処理(図23のステップS120〜S118およびステップS122,S124)を除いたものに相当する。これは、図51に示されるフローチャートでは、相手先のゲーム装置100とのデータ通信には、人体通信ではなく無線通信が用いられるため、プレイヤを介した人体通信信号の伝搬経路が形成されていることを確認する必要がないからである。
したがって、図51のフローチャートの含まれる各ステップの内容については上述したので、説明は繰返さない。但し、図51のステップS106A,S128A,S130Aの処理は、無線通信を用いて実行され、これを明確化するために添え字の「A」を付している。
図51に示されるフローチャートに従って処理が実行されることで、無線通信によって、交換される対象オブジェクトがそれぞれ確定する。続いて、図52に示されるフローチャートに従って処理が実行されることで、人体通信によって、対象オブジェクトのオブジェクト情報が送受信される。
より具体的には、図52に示されるフローチャートは、図24に示すフローチャートにおいて、ステップS132の処理をステップS133の処理に変更した上で、プレイヤのタッチパネル20に対するタッチ操作の有無を判断するための処理(図24のステップS156〜S160)を除いたものに相当する。
図52を参照して、ステップS133では、CPUコア42は、LCD14上に、交換開始ボタンおよび「交換開始ボタンをタッチしてください」を表示する。これは、プレイヤによるオブジェクト交換等処理の実行の承認を求めるものである。また、ステップS133以降の処理では、人体通信により対象オブジェクトのオブジェクト情報の送受信が開始されるので、プレイヤに対して、人体通信信号の伝搬経路を形成するように促すことも兼ねている。
以下、ステップS156〜S164の各処理は、人体通信を正常に行なうことができないと判断される場合の終了処理である。具体的には、ステップS156,S162,S164の処理は、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置100から送信される情報の受信完了前に、タッチパネル20による選択オブジェクトについてのプレイヤ操作の検出が途切れた場合に、実行中の送信または受信を中止するための処理である。また、ステップS168,S162,S164の処理は、選択オブジェクトに関する情報の送信完了前、または他のゲーム装置100から送信される情報の受信完了前に、人体通信が途切れた場合に、実行中の送信または受信を中止するための処理である。
より具体的には、図53に示すように、人体通信により対象オブジェクトのオブジェクト情報の送受信が開始される前に、ゲーム装置100のLCD14上に「交換開始」ボタンOBJ21が表示され、プレイヤがこの「交換開始」ボタンOBJ21をタッチ操作することで、図52に示すステップS133に引き続くステップS134以降の処理が実行される。
上述したように、図52のフローチャートの含まれる各ステップの内容については、図24についての説明において述べたので、詳細な説明は繰返さない。
図52に示されるフローチャートに従って処理が実行されることで、ゲーム装置100の間で対象オブジェクトのオブジェクト情報が交換される。
なお、図50〜図52には、交換処理に係るシーケンスおよびフローチャートを示したが、上述したようなあげる/もらう処理においても同様に適用できることは言うまでもない。すなわち、あげる/もらう処理では、図50に示すシーケンスならびに図51および図52に示すフローチャートのうち、一方のゲーム装置100から他方のゲーム装置100へのオブジェクト情報の送信、あるいは受信に係る処理のみが実行される。
[実施の形態4の第1変形例]
上述の実施の形態4では、対象オブジェクトに関する情報を人体通信により送受信する構成について例示したが、無線通信により対象オブジェクトに関する情報の送受信まで行った上で、最終的な各ゲーム装置100での更新処理に対するプレイヤによる承認を得るために、人体通信を利用してもよい。以下、このような構成について例示する。
<全体処理シーケンス>
本実施の形態の第1変形例に従うゲーム装置100間で実行されるオブジェクト交換等処理のシーケンスの一例について説明する。本実施の形態の第1変形例では、プレイヤ操作に従って、いずれかのオブジェクトに関する情報の他のゲーム装置100への送受信を実行するための条件設定が行なわれた後、当該条件設定に従って、無線通信により対象オブジェクトに関する情報の送受信が行われる。この対象オブジェクトに関する情報の送受信の完了後、両ゲーム装置100の間で人体通信が確立されると、それぞれのゲーム装置100において、各自のRAM48(図3)に記憶された対応するオブジェクト情報が更新される。このように、最終的に人体通信を用いて対象オブジェクトに関する情報の送受信が承認されるので、プレイヤの意図した相手先との間で対象オブジェクトに関する情報の送受信を確実に行なうことができる。
図54は、この発明の実施の形態4の第1変形例に従うゲーム装置100間で実行されるオブジェクト交換等処理のシーケンス図である。図54に示すオブジェクト交換等処理のシーケンスは、図50に示すオブジェクト交換等処理のシーケンスに比較して、対象オブジェクトのオブジェクト情報の送受信についても無線通信を用いて実行する点が相違する。
すなわち、図54に示すシーケンスのうち、プレイヤによるタッチ操作に応答して、ゲーム装置100−1の無線通信部66(図3)が活性化(シーケンスSQ80a)してから、ゲーム装置100−1,100−2がそれぞれオブジェクトの確定を通知するためのオブジェクト確定信号を相手先へ送信する(シーケンスSQ22a,SQ22b)までの処理は、図50に示す処理と同様であるので、詳細な説明は繰返さない。
引き続くシーケンスSQ24aでは、ゲーム装置100−1は、無線通信を用いて、対象となるオブジェクトのオブジェクト情報を相手先へ送信する。オブジェクト情報の送信が完了すると、ゲーム装置100−1は、さらに送信完了信号を相手先へ送信する(シーケンスSQ24b)。
同様に、ゲーム装置100−2は、無線通信を用いて、対象となるオブジェクトのオブジェクト情報を相手先へ送信する(シーケンスSQ26a)とともに、オブジェクト情報の送信が完了すると、さらに送信完了信号を相手先へ送信する(シーケンスSQ24b)。
対象オブジェクトのオブジェクト情報の送信完了後、ゲーム装置100−1,100−2のLCD14上に、図53に示すような「交換開始」ボタンが表示される。これは、プレイヤによるオブジェクト交換等処理の実行の承認を求めるものである。そして、プレイヤがゲーム装置100−1および100−2のLCD14に対してそれぞれタッチ操作を行なうと、人体通信が確立されたか否かが判断される。
具体的には、ゲーム装置100−1からゲーム装置100−2に対して、問合せパケットが送信される(シーケンスSQ40a)。この問合せパケットを受信したゲーム装置100−2は、自身のIDを含めた応答パケットをゲーム装置100−1へ返信する(シーケンスSQ42a)。この応答パケットを受取ったゲーム装置100−1は、予め記憶(図18のシーケンスSQ10a参照)しているゲーム装置100−2のIDと、当該応答パケットに含まれるIDとを比較して、両者が一致するか否かを判断する(IDチェック)(シーケンスSQ44a)。この一連の処理が問題なく実行される場合には、ゲーム装置100−1は、ゲーム装置100−2との間の人体通信が確立されたと判断する。同様に、ゲーム装置100−2についても、問合せパケットの送信(シーケンスSQ40b)、応答パケットの返信(シーケンスSQ42b)、IDチェック(シーケンスSQ44b)を行なって、ゲーム装置100−1との間の人体通信が正常に確立されていると判断する。
このように、シーケンスSQ40a,SQ42a,SQ44aの処理によって、相手先のゲーム装置100−2との間で人体通信が確立されたと判断されると、ゲーム装置100−1は、自装置のRAM48の獲得済オブジェクト情報記憶領域48cから、相手先のゲーム装置100−2へ送信したオブジェクト情報を削除する(シーケンスSQ28a)とともに、相手先から受信したオブジェクト情報を、自装置のRAM48の獲得済オブジェクト情報記憶領域48cに追加する(シーケンスSQ30a)。
同様に、シーケンスSQ40b,SQ42b,SQ44bの処理によって、相手先のゲーム装置100−1との間で人体通信が確立されたと判断されると、ゲーム装置100−2は、自装置のRAM48の獲得済オブジェクト情報記憶領域48cから、相手先のゲーム装置100−1へ送信したオブジェクト情報を削除する(シーケンスSQ28b)とともに、相手先から受信したオブジェクト情報を、自装置のRAM48の獲得済オブジェクト情報記憶領域48cに追加する(シーケンスSQ30b)。
<交換処理フロー>
本実施の形態の第1変形例に従うゲーム装置100間では、上述の図51のフローチャートに示す処理の実行後、図52のフローチャートに示す処理に代えて、図55のフローチャートに示す処理が実行される。
図55は、この発明の実施の形態4の第1変形例に従う交換処理の手順を示すフローチャートである。なお、図55に示すフローチャートは、図17に示すフローチャートのステップS24の詳細な処理の別形態を示すものである。また、図55に示すフローチャートは、交換処理を行なう2つのゲーム装置100−1,100−2の各々において実行される。
図55のステップS134A〜S150までの処理は、図24のステップS134〜S150までの処理と実質的に同一であるので、詳細な説明は繰返さない。但し、図55のステップS134A,S136A,S140A,S142A,S144A,S146Aの処理は、無線通信を用いて実行され、これを明確化するために添え字の「A」を付している。
ステップS150においてYESの場合に、引き続いて実行されるステップS133では、CPUコア42は、LCD14上に、交換開始ボタンおよび「交換開始ボタンをタッチしてください」を表示する。これは、プレイヤによるオブジェクト交換等処理の実行の承認を求めるものである。また、ステップS133以降の処理では、人体通信により対象オブジェクトのオブジェクト情報の送受信が開始されるので、プレイヤに対して、人体通信信号の伝搬経路を形成するように促すことも兼ねている。すなわち、他のゲーム装置100との間で人体通信が確立されたとの判断(後述するステップS168)に加えて、LCD14の所定領域内に対するプレイヤによるタッチ操作が検出された場合に、RAM48に記憶された対応する情報が更新されることになる。そして、処理はステップS166に移る。
ステップS166では、CPUコア42は、交換処理のキャンセル操作をプレイヤにガイドするために、「手を離せばキャンセルできます」といったメッセージを表示する。同時に、オブジェクト情報の送信中であることを示すバー表示(進行表示)を行なってもよい。引き続くステップS167では、人体通信についての通信状態判断処理(図22および図33参照)が実行される。そして、処理はステップS168に移る。
ステップS168では、CPUコア42は、相手先のゲーム装置100との間で確立された人体通信にエラーが発生しているか否かを判断する。この人体通信にエラーが発生しているか否かの判断は、通信エラーフラグ(図22のシーケンスSQ22参照)に基づいてなされる。人体通信にエラーが発生していない場合、すなわちステップS168においてNOの場合には、処理はステップS169に移る。一方、人体通信にエラーが発生している場合、すなわちステップS168においてYESの場合には、処理はステップS162に移る。
ステップS169では、CPUコア42は、人体通信にエラーが発生した状態で所定時間経過したか否かを判断する。人体通信にエラーが発生した状態で所定時間経過していない場合、すなわちステップS169においてNOの場合には、処理はステップS166に戻る。一方、人体通信にエラーが発生した状態で所定時間経過した場合、すなわちステップS169においてYESの場合には、処理はステップS162に移る。
ステップS152では、RAM48の獲得済オブジェクト情報記憶領域48cから、相手先のゲーム装置100へ送信したオブジェクト情報のエントリを削除する。引き続くステップS154では、CPUコア42は、相手先のゲーム装置100から受信したオブジェクト情報をRAM48の送受信データ一時記憶領域48eから読出し、RAM48の獲得済オブジェクト情報記憶領域48cに追加する。その後、処理はリターンする。
ステップS162では、CPUコア42は、相手先とのオブジェクト交換の継続が不可能であると判断し、プレイヤにその旨を通知するために、「キャンセルしました」といったメッセージを表示する。引き続くステップS164では、CPUコア42は、RAM48の送受信データ一時記憶領域48eに記憶されている、相手先のゲーム装置100から受信したオブジェクト情報を破棄する。そのため、相手先のゲーム装置100からの受信が完了する前のオブジェクト情報は保存されない。そして、処理はステップS100(図51)に戻る。
[実施の形態5]
上述の実施の形態1〜4においては、プレイヤがそれぞれのゲーム装置100において、オブジェクト交換等処理のうち所望する処理(「交換する」、「あげる」、「もらう」)のいずれかを予め選択する構成について例示した。これに対して、実施の形態5では、プレイヤによるタッチ操作の先後を2つのゲーム装置100の間で比較し、その結果に基づいていずれかの処理を実行する構成について例示する。
本実施の形態に従うゲーム装置100の構造などについては、図1〜図5と同様であるので、詳細な説明は繰返さない。また、以下の説明では、本実施の形態に従うゲーム装置において、図7〜図15に示すようなオブジェクト情報を交換するゲーム処理を実現する構成について例示するが、図35〜図38に示すようなオブジェクトに対応付けられたパラメータを交換するゲーム処理を同様に実現できることは言うまでもない。
より具体的には、2つのゲーム装置100のうち、プレイヤが先にタッチ操作を行なったゲーム装置100が「あげる処理」を実行し、後にタッチ操作がなされたゲーム装置100が「もらう処理」を実行する構成について例示する。このような処理を付加することで、プレイヤはメニューで処理項目を選択することなく、より直感的に、キャラクターなどのオブジェクトを他のプレイヤにあげたりすることができる。
図56は、この発明の実施の形態5に従うゲームの全体処理を示すフローチャートである。図57は、図56に示すフローチャートのステップS42におけるサーチ処理(4)の詳細を示すフローチャートである。図56および図57に示す各ステップは、代表的に、CPUコア42が、メモリカード26に記憶されたゲームプログラムをRAM48に読み出して実行することで実現される。
図56を参照して、ステップS2〜S12およびステップS30の処理は、図17のステップS2〜S12およびステップS30の処理とそれぞれ実質的に同一であるので、詳細な説明は繰返さない。
ステップS12においてYESの場合に引き続くステップS40では、CPUコア42は、プレイヤによるタッチパネル20に対するタッチ操作がなされたか否かを判断する。タッチパネル20に対するタッチ操作がなされた場合、すなわちステップS40においてYESの場合には、処理はステップS42に移る。一方、タッチパネル20に対するタッチ操作がなされていない場合、すなわちステップS40においてNOの場合には、処理はステップS40に戻る。
ステップS42では、CPUコア42は、相手先のゲーム装置100との間で人体通信を確立するためのサーチ処理(4)を実行する。ステップS42のサーチ処理(4)の詳細は、図57に示すフローチャートに従う。このサーチ処理(4)では、人体通信が確立されるとともに、両ゲーム装置100の間でいずれが「マスター」または「スレーブ」であるかが決定される。すなわち、各ゲーム装置100の記憶するマスターフラグおよびスレーブフラグのいずれかが「オン」になる。このステップS56のサーチ処理(4)の実行後、処理はステップS44に移る。
ステップS44では、CPUコア42は、マスターフラグが「オン」であるか否かを判断する。マスターフラグが「オン」である場合、すなわちステップS44においてYESの場合には、処理はステップS26に移る。一方、マスターフラグが「オン」でない場合、すなわちステップS44においてNOの場合には、処理はステップS46に移る。
ステップS46では、CPUコア42は、スレーブフラグが「オン」であるか否かを判断する。スレーブフラグが「オン」である場合、すなわちステップS46においてYESの場合には、処理はステップS28に移る。一方、スレーブフラグが「オン」でない場合、すなわちステップS46においてNOの場合には、処理はステップS2に戻る。
<サーチ処理(4)フロー>
図57に示すサーチ処理(4)のフローチャートは、図25に示すサーチ処理(1)のフローチャートにおいて、ステップS212およびS220の処理を除いた上で、ステップS209およびS217の処理を追加したものに相当する。
図57を参照して、まずステップS200〜S208の処理は、図25のステップS200〜S208の処理とそれぞれ実質的に同一であるので、詳細な説明は繰返さない。ステップS208に引き続くステップS209では、CPUコア42は、ステップS206において受信した接続要求に含まれる相手先のIDを記憶する。さらに引き続くステップS210では、CPUコア42は、マスターフラグを「オン」にする。そして、処理はリターンする。
一方、ステップS202においてNOの場合には、処理はステップS214およびS216に移る。ステップS214およびS216の処理は、図25のステップS214およびS216の処理とそれぞれ実質的に同一であるので、詳細な説明は繰返さない。ステップS216においてYESの場合には、処理はステップS217に移る。
ステップS217では、CPUコア42は、ステップS216において受信した接続確認に含まれる相手先のIDを記憶する。さらに引き続くステップS218では、CPUコア42は、スレーブフラグを「オン」にする。そして、処理はリターンする。
[実施の形態6]
上述の実施の形態5においては、サーチ処理の過程で決定される「マスター」および「スレーブ」の属性に応じて、いずれのゲーム装置100が「あげる処理」を行ない、いずれのゲーム装置100が「もらう処理」を行なうのかを判断する構成について例示した。一方、実施の形態6では、時計IC68(図3)によって計時される時刻に基づいて、対象オブジェクトに対するプレイヤによるタッチ操作の先後を比較する構成について例示する。
本実施の形態に従うゲーム装置100の構造などについては、図1〜図5と同様であるので、詳細な説明は繰返さない。また、以下の説明では、本実施の形態に従うゲーム装置において、図7〜図15に示すようなオブジェクト情報を交換するゲーム処理を実現する構成について例示するが、図35〜図38に示すようなオブジェクトに対応付けられたパラメータを交換するゲーム処理を同様に実現できることは言うまでもない。
<人体通信確立シーケンス>
まず、本実施の形態に従うゲーム装置100間で実行される人体通信確立処理のシーケンスの一例について説明する。
図58は、この発明の実施の形態6に従うゲーム装置100間で実行される人体通信確立処理のシーケンス図である。
図58を参照して、プレイヤがゲーム装置100−1に対してタッチ操作を行なうと、当該タッチ操作が検出された時刻(以下、「タッチ検出時刻」とも称する。)が記憶される(シーケンスSQ90a)。続いて、人体通信を確立するための信号として、接続可能を示すパケットの送信が開始される(シーケンスSQ2A)。この接続可能を示すパケットは、後述するように、現在時刻とタッチ検出時刻との時間差(以下、「タッチ検出時間差」とも称する。)を示すデータを含む。
一方、プレイヤがゲーム装置100−2に対してタッチ操作を行なうと、ゲーム装置100−1と同様に、当該タッチ操作が検出された時刻(タッチ検出時刻)が記憶される(シーケンスSQ90b)。そして、ゲーム装置100−2もパケットの送受信を開始する。
あるタイミングで、接続可能を示すパケットがゲーム装置100−2で受信されると、ゲーム装置100−2は、受信したパケットに含まれる(相手先のゲーム装置100−1の)タッチ検出時間差と、自装置における現在時刻とタッチ検出時刻とのタッチ検出時間差とを比較して評価する。これは、ゲーム装置100−1および100−2のそれぞれが計時する現在時刻は必ずしも一致しているとは限らないので、どの程度の時間だけ前にタッチ操作がなされたかに基づいて、プレイヤによるタッチ操作の先後を判断するための処理である。
このような評価の後、ゲーム装置100−2は、自装置に対するプレイヤのタッチ操作が相手先のゲーム装置100−1に対するプレイヤのタッチ操作より先であるか、後であるかに基づいて、マスターまたはスレーブとして機能することを通知する接続要求をゲーム装置100−1へ送信する(シーケンスSQ6B)。すなわち、ゲーム装置100−2は、自装置におけるタッチ操作が相手先のゲーム装置100−1より後であると判断されると、自装置をスレーブとして機能することを通知し、ゲーム装置100−2は、自装置におけるタッチ操作が相手先のゲーム装置100−1より先であると判断されると、自装置をマスターとして機能することを通知する。なお、接続要求には、ゲーム装置100−2のIDも含まれる。
このような接続要求を受信したゲーム装置100−1は、自装置のIDを含む接続応答をゲーム装置100−2に返信する(シーケンスSQ8B)。そして、ゲーム装置100−1は、接続要求に含まれる相手先であるゲーム装置100−2のIDを記憶(シーケンスSQ10a)し、接続応答を受信したゲーム装置100−2は、ゲーム装置100−1のIDを記憶する(シーケンスSQ10b)。
さらに、ゲーム装置100−1は、自装置の機能を当該接続要求に含まれる通知内容(マスターまたはスレーブ)とは異なるものと判断する。すなわち、ゲーム装置100−2からの通知内容がスレーブであれば、ゲーム装置100−1は、マスターとして機能すると判断し、その逆に、ゲーム装置100−2からの通知内容がマスターであれば、ゲーム装置100−1は、スレーブとして機能すると判断する。そして、ゲーム装置100−1は、この判断結果に応じて、マスターフラグおよびスレーブフラグの一方を「オン」にする(シーケンスSQ94a)。
一方、ゲーム装置100−2は、シーケンスSQ92での評価結果に基づいて、マスターフラグおよびスレーブフラグの一方を「オン」にする(シーケンスSQ94b)。
図59は、この発明の実施の形態6に従うゲームの全体処理を示すフローチャートである。図60は、図59に示すフローチャートのステップS68におけるサーチ処理(5)の詳細を示すフローチャートである。図59よび図60に示す各ステップは、代表的に、CPUコア42が、メモリカード26に記憶されたゲームプログラムをRAM48に読み出して実行することで実現される。
図59に示す実施の形態6に従うゲームの全体処理を示すフローチャートは、図56に示す実施の形態5に従うゲームの全体処理を示すフローチャートにおいて、ステップS42に代えて、ステップS66およびS68を追加したものに相当する。
図59を参照して、ステップS2〜S12,S30,S40の処理は、図56のステップS2〜S12,S30,S40の処理とそれぞれ実質的に同一であるので、詳細な説明は繰返さない。
ステップS40においてYESの場合に引き続くステップS66では、CPUコア42は、タッチ操作がなされた現在時刻をタッチ検出時間差として記憶する。なお、現在時刻は、時計IC68(図3)により計時されており、CPUコア42はこの値を取得して記憶する。そして、処理はステップS68に移る。
ステップS68では、CPUコア42は、相手先のゲーム装置100との間で人体通信を確立するためのサーチ処理(5)を実行する。ステップS42のサーチ処理(5)の詳細は、図60に示すフローチャートに従う。このサーチ処理(5)では、人体通信が確立されるとともに、両ゲーム装置100の間でいずれが「マスター」または「スレーブ」であるかが決定される。すなわち、各ゲーム装置100の記憶するマスターフラグおよびスレーブフラグのいずれかが「オン」になる。このステップS56のサーチ処理(5)の実行後、処理はステップS44に移る。
ステップS44,S46,S26,S28の処理は、図56のステップS44,S46,S26,S28の処理とそれぞれ実質的に同一であるので、詳細な説明は繰返さない。
<サーチ処理(5)フロー>
図60を参照して、まずステップS200では、所定の期間に亘って、いずれかのゲーム装置100からの接続可能を示すパケットの受信を待つ(図58のシーケンスSQ2A参照)。引き続くステップS202では、CPUコア42は、いずれかのゲーム装置100から接続可能を示すパケットを受信したか否かを判断する。接続可能を示すパケットを受信していない場合、すなわちステップS202においてNOの場合、処理はステップS203に移る。一方、接続可能を示すパケットを受信している場合、すなわちステップS202においてYESの場合、処理はステップS238に移る。
ステップS203では、CPUコア42は、自装置における現在時刻とタッチ検出時刻との差であるタッチ検出時間差を算出する。引き続くステップS204では、CPUコア42は、ステップS203で算出したタッチ検出時間差を含んだ、接続可能を示すパケットの送信を開始する(図58のシーケンスSQ2A参照)。そして、処理はステップS206に移る。
ステップS206で、CPUコア42は、相手先から接続要求を受信(図58のシーケンスSQ6B参照)したか否かを判断する。相手先から接続要求を受信した場合、すなわちステップS206においてYESの場合には、処理はステップS208に移る。一方、相手先から接続要求を受信していない場合、すなわちステップS206においてNOの場合には、処理はステップS203に戻る。
ステップS208では、CPUコア42は、相手先に接続確認を送信する(図58のシーケンスSQ8B参照)。引き続くステップS209では、CPUコア42は、ステップS206において受信した接続要求に含まれる相手先のIDを記憶する。そして、処理はステップS230に移る。
ステップS230では、CPUコア42は、ステップS206において受信した接続要求がマスターを通知しているか否かを判断する。接続要求がマスターを通知している場合、すなわちステップS230においてYESの場合には、処理はステップS232に移る。一方、接続要求がマスターを通知していない場合、すなわちステップS230においてNOの場合には、処理はステップS234に移る。
ステップS232では、CPUコア42は、スレーブフラグを「オン」にする。そして、処理はリターンする。
ステップS234では、CPUコア42は、ステップS206において受信した接続要求がスレーブを通知しているか否かを判断する。接続要求がスレーブを通知している場合、すなわちステップS234においてYESの場合には、処理はステップS236に移る。一方、接続要求がスレーブを通知していない場合、すなわちステップS234においてNOの場合には、処理はステップS204に戻る。
ステップS236では、CPUコア42は、マスターフラグを「オン」にする。そして、処理はリターンする。
これに対して、ステップS238では、ステップS202において受信したパケットに含まれているタッチ検出時間差を抽出する。引き続くステップS240では、CPUコア42は、自装置における現在時刻とタッチ検出時刻との差であるタッチ検出時間差を算出する。そして、処理はステップS242に移る。
ステップS242では、CPUコア42は、ステップS202において受信したパケットから抽出したタッチ検出時間差が自装置のタッチ検出時間差より大きいか否かを判断する。すなわち、相手先のゲーム装置100におけるプレイヤによるタッチ操作が、自装置におけるプレイヤによるタッチ操作より先に行なわれたか否かが判断される。受信したパケットから抽出したタッチ検出時間差が自装置のタッチ検出時間差より大きい場合(相手先でのタッチ操作が先の場合)、すなわちステップS242においてYESの場合には、処理はステップS244に移る。一方、受信したパケットから抽出したタッチ検出時間差が自装置のタッチ検出時間差より大きくない場合(自装置でのタッチ操作が先の場合)、すなわちステップS242においてNOの場合には、処理はステップS252に移る。
ステップS244では、相手先にスレーブを通知する接続要求を送信する。引き続くステップS246では、CPUコア42は、相手先から接続確認を受信したか否かを判断する。相手先から接続確認を受信した場合、すなわちステップS246においてYESの場合には、処理はステップS248に移る。一方、相手先から接続確認を受信していない場合、すなわちステップS248においてNOの場合には、処理はステップS246に戻る。
ステップS252では、相手先にマスターを通知する接続要求を送信する。引き続くステップS254では、CPUコア42は、相手先から接続確認を受信したか否かを判断する。相手先から接続確認を受信した場合、すなわちステップS254においてYESの場合には、処理はステップS256に移る。一方、相手先から接続確認を受信していない場合、すなわちステップS254においてNOの場合には、処理はステップS254に戻る。
ステップS256では、ステップS254において受信した接続確認に含まれる相手先のIDを記憶する。引き続くステップS258では、CPUコア42は、スレーブフラグを「オン」にする。そして、処理はリターンする。
[実施の形態7]
上述してきたように、図3に示すようなゲーム装置100において、人体通信を用いて他のゲーム装置100との間でデータ通信を行なうためには、プレイヤを介して、両ゲーム装置100の間で人体通信のための伝搬経路が形成される必要がある。言い換えれば、プレイヤが一方のゲーム装置100に対してのみタッチ操作を行なっている状態では、両ゲーム装置100の間で人体通信を行なうことはできない。
そこで、相手先のゲーム装置100との間で人体通信が確立されたことを条件として、プレイヤに対して、オブジェクト交換等処理に係るメニューを提示するようにしてもよい。すなわち、オブジェクト交換等処理が実行できる状態になった場合に、はじめて当該処理の内容を選択するためのメニューを表示することが好ましい。以下、このようなメニューの表示に係る処理を行なう形態について例示する。
図61は、この発明の実施の形態7に従うゲーム装置100間で実行されるオブジェクト交換等処理のシーケンス図である。
図61を参照して、ゲーム装置100−1および100−2において、ゲーム進行の状態が所定条件を満たしている場合に、たとえば、プレイヤがゲーム装置100−1に対してタッチ操作を行なうと、ゲーム装置100−1の人体通信部56(図3)が活性化し(シーケンスSQ1a)、他のゲーム装置100との間の人体通信を確立するための信号の送信を開始する。すなわち、タッチパネル20によってLCD14に対するプレイヤのタッチ操作が検出されると、LCD14に近接または組み込まれて配置されたアンテナ(図5の上側導電膜層204)からは、人体通信部56(図3)で生成された人体通信を確立するための信号(接続可能を示すパケット)が周期的に送信される(シーケンスSQ2)。
ゲーム装置100−1からの人体通信を確立するための信号(接続可能を示すパケット)の送信開始後、プレイヤがゲーム装置100−2に対してタッチ操作を行なうと、ゲーム装置100−2の人体通信部56(図3)も同様に活性化する(シーケンスSQ1b)。すると、ゲーム装置100−1から送信される接続可能を示すパケットは、ゲーム装置100−2により受信される。この接続可能を示すパケットを受信したゲーム装置100−2は、ゲーム装置100−1との間の人体通信を確立するために、接続要求(応答)を送信する(シーケンスSQ6)。
ゲーム装置100−1の人体通信部56(図3)が、この人体通信を確立するための信号(接続可能を示すパケット)に応じて発せられたゲーム装置100−2からの応答を受信することで、ゲーム装置100−1では、ゲーム装置100−2との間の人体通信が確立されたと判断される。
引き続いて、ゲーム装置100−1は、ゲーム装置100−2へ接続確認を送信する(シーケンスSQ8)。ゲーム装置100−2では、ゲーム装置100−1からの接続確認を受信することで、ゲーム装置100−1との間の人体通信が確立されたと判断される。
ゲーム装置100−1および100−2は、それぞれ相手先のゲーム装置との間の人体通信が確立されたと判断された場合に、各自のLCD14にメニューを表示する(シーケンスSQ50a,SQ50b)。このメニューは、たとえば図8に示すような図8を参照して、本実施の形態に従うゲームプレイ中に表示されるオブジェクト交換等処理の開始を受付けるための入力画面である。すなわち、他のゲーム装置との間で人体通信が確立されたと判断された場合には、いずれかのオブジェクトに関する情報の送信(あげる処理)、および他のゲーム装置から送信される情報の受信(もらう処理)の少なくとも一方を実行するための条件設定を受付けるための入力画面が表示される。
また、これらのメニューの表示に伴って、他のゲーム装置との間でオブジェクトに関する情報を交換するための交換モード(オブジェクト交換等処理)が有効化される。すなわち、両ゲーム装置100の間で人体通信が確立したと判断されると、オブジェクト交換等処理が実行可能状態になる。
シーケンスSQ50a,SQ50b以降においては、図22に示す通信状態判断処理に係るシーケンスと同様に、ゲーム装置100−1とゲーム装置100−2との間で、相手先への問合せの送信と当該問合せに対する応答とを交互に繰返すことで、人体通信が途切れたこと(人体通信の異常発生)が監視される。
具体的には、ゲーム装置100−1からゲーム装置100−2に対して、問合せパケットが送信される(シーケンスSQ40a)。この問合せパケットを受信したゲーム装置100−2は、応答パケットをゲーム装置100−1へ返信する(シーケンスSQ42a)。逆に、ゲーム装置100−2からゲーム装置100−1に対しても、問合せパケットが送信される(シーケンスSQ40b)。この問合せパケットを受信したゲーム装置100−1は、応答パケットをゲーム装置100−2へ返信する(シーケンスSQ42b)。このような一連の処理が繰返されているか否かに基づいて、ゲーム装置100−1とゲーム装置100−2との間の人体通信が正常に確立されているか否かが判断される。
そして、いずれかのゲーム装置100(図61の場合には、ゲーム装置100−1)に対するプレイヤのタッチ操作が外れると、両者の間で人体通信ができなくなる。すると、通信エラーフラグがオンになり、これに連動して、ゲーム装置100−1および100−2のそれぞれでは、メニューが消去される(シーケンスSQ52a,SQ52b)。
なお、ゲーム装置100−1および100−2において、メニュー(入力画面)に対するプレイヤによるタッチ操作は、メニューの表示中、すなわち両ゲーム装置100の間で人体通信が確立中において有効化される。言い換えれば、両ゲーム装置100の間で人体通信が確立中において、他のゲーム装置との間でオブジェクトに関する情報を交換するための交換モード(オブジェクト交換等処理)が有効となる。
なお、オブジェクト交換等処理の詳細については、上述した実施の形態1〜6に説明したいずれかの処理を用いることができる。
[実施の形態7の第1変形例]
上述したように、プレイヤが、導電性のスタイラスペン24を用いてタッチ操作を行なう場合には、当該スタイラスペン24を伝搬経路の一部として人体通信が可能である。しかしながら、たとえばプラスチックなどの非導電性のスタイラスペンが使用された場合には、たとえタッチパネル20によりタッチ操作が検出されたとしても、実際のプレイヤの人体がLCD14(アンテナ)に接触または近接していないので、他のゲーム装置との間で人体通信を行なうことができないことも予想される。
そこで、タッチパネル20により検出されるタッチ操作のうち、プレイヤの人体(代表的に、指)によりなされている可能性が高いことを確認した上で、人体通信を確立するための信号(接続可能を示すパケット)の送信を開始することが好ましい。
このようなプレイヤの人体によるタッチ操作を特定する方法の一例として、タッチ操作に伴う接触面積に基づいて判断する方法がある。より具体的には、タッチパネル20として、上述の抵抗膜方式のものに代えて、静電容量結合式のものを採用することで、タッチ操作に伴う接触面積を示す検出結果を得ることができる。すなわち、静電容量結合式のタッチパネルでは、接触面積に応じて静電容量が変化するので、この静電容量の値、あるいは静電容量を間接的に表す電圧などに基づいて、接触面積を示す検出結果を得ることができる。
そこで、このようなタッチパネル20からの検出結果が所定範囲の接触面積に応じた値である場合に、人体通信を確立するための信号(接続可能を示すパケット)の送信が開始される。なお、接触面積を評価するための所定範囲の値(しきい値)は、プレイヤの指などの大きさを考慮して、実験的に決定される。
なお、静電容量結合式のものに代えて、赤外線方式のタッチパネルを用いても、同様の処理が可能である。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
この発明の実施の形態1に従う携帯型のゲーム装置の外観図(使用時)である。 この発明の実施の形態1に従う携帯型のゲーム装置の外観図(収納時)である。 この発明の実施の形態1に従うゲーム装置の機能ブロック図である。 図1のIV−IV線に対応するLCDおよびタッチパネルの模式断面図である。 タッチパネルを人体通信のアンテナとして用いた場合の構成を示す模式図である。 この発明の実施の形態1に従うゲーム装置の間で人体通信を用いたゲームをプレイするプレイヤの操作態様の一例を示す図である。 この発明の実施の形態1に従うゲーム装置のLCDで表示されるゲームシーンの一形態を示す図である。 図7に示すゲームシーンにおいてオブジェクト交換等処理のメニューが表示された一形態を示す図である。 図8にメニューのうち「交換する」が選択された後のゲームシーンの一形態を示す図である。 図8にメニューのうち「交換する」が選択された後のゲームシーンの一形態を示す図である。 図9に示すゲームシーンにおいて交換処理が完了した後のゲームシーンの一形態を示す図である。 図10に示すゲームシーンにおいて交換処理が完了した後のゲームシーンの一形態を示す図である。 図8にメニューのうち「もらう」が選択された後のゲームシーンの一形態を示す図である。 図9に示すゲームシーンにおいてあげる処理が完了した後のゲームシーンの一形態を示す図である。 図13に示すゲームシーンにおいてもらう処理が完了した後のゲームシーンの一形態を示す図である。 この発明の実施の形態1に従うRAM48に展開されるメモリマップの一例を示す図である。 この発明の実施の形態1に従うゲームの全体処理手順を示すフローチャートである。 この発明の実施の形態1に従うゲーム装置間で人体通信を確立するためのシーケンス図である。 この発明の実施の形態1に従うゲーム装置間で送受信されるパケットのデータ構造の一例を示す図である。 この発明の実施の形態1に従うゲーム装置間で実行される交換処理に係るシーケンス図である。 この発明の実施の形態1に従うゲーム装置間で実行される、あげる/もらう処理に係るシーケンス図である。 この発明の実施の形態1に従うゲーム装置間で実行される通信状態判断処理に係るシーケンス図である。 この発明の実施の形態1に従う交換処理の手順を示すフローチャートである。 この発明の実施の形態1に従う交換処理の手順を示すフローチャートである。 図23に示すフローチャートのステップS106におけるサーチ処理(1)の詳細を示すフローチャートである。 この発明の実施の形態1に従うあげる処理の手順を示すフローチャートである。 この発明の実施の形態1に従うあげる処理の手順を示すフローチャートである。 図26に示すフローチャートのステップS306におけるサーチ処理(2)の詳細を示すフローチャートである。 この発明の実施の形態1に従う交換処理の手順を示すフローチャートである。 この発明の実施の形態1に従う交換処理の手順を示すフローチャートである。 図28に示すフローチャートのステップS506におけるサーチ処理(3)の詳細を示すフローチャートである。 この発明の実施の形態1に従う通信状態判断処理の手順を示すフローチャートである。 この発明の実施の形態1の第2変形例に従う交換処理の手順を示すフローチャートである。 この発明の実施の形態1の第2変形例に従うあげる処理の手順を示すフローチャートである。 図6に示すゲーム装置のLCDで表示されるゲームシーンの一形態を示す図である。 図6に示すゲーム装置のLCDで表示されるゲームシーンの一形態を示す図である。 図35に示すゲームシーンにおいてHPをあげる処理中のゲームシーンの一形態を示す図である。 図36に示すゲームシーンにおいてHPをもらう処理中のゲームシーンの一形態を示す図である。 この発明の実施の形態2に従うゲームの全体処理手順を示すフローチャートである。 この発明の実施の形態2に従うゲーム装置間で実行されるあげる/もらう処理(パラメータ)に係るシーケンス図である。 この発明の実施の形態2に従うあげる処理(パラメータ)の手順を示すフローチャートである。 図39に示すフローチャートのステップS29のもらう処理(パラメータ)の詳細を示すフローチャートである。 この発明の実施の形態2の第1変形例に従うゲーム装置間で実行されるあげる/もらう処理(パラメータ)に係るシーケンス図である。 この発明の実施の形態2の第1変形例に従うあげる処理(パラメータ)の手順を示すフローチャートである。 この発明の実施の形態2の第1変形例に従うもらう処理(パラメータ)の手順を示すフローチャートである。 この発明の実施の形態3に従うゲーム装置の間で人体通信を用いたゲームをプレイするプレイヤの操作態様の一例を示す図である。 この発明の実施の形態3に従うゲーム装置間で実行されるオブジェクト交換等処理のシーケンス図である。 この発明の実施の形態3に従う交換処理の手順を示すフローチャートである。 この発明の実施の形態3の第1変形例に従う交換処理の手順を示すフローチャートである。 この発明の実施の形態4に従うゲーム装置間で実行されるオブジェクト交換等処理のシーケンス図である。 この発明の実施の形態4に従う交換処理の手順を示すフローチャートである。 この発明の実施の形態4に従う交換処理の手順を示すフローチャートである。 この発明の実施の形態4に従うゲーム装置のLCDで表示されるゲームシーンの一形態を示す図である。 この発明の実施の形態4の第1変形例に従うゲーム装置間で実行されるオブジェクト交換等処理のシーケンス図である。 この発明の実施の形態4の第1変形例に従う交換処理の手順を示すフローチャートである。 この発明の実施の形態5に従うゲームの全体処理を示すフローチャートである。 図56に示すフローチャートのステップS42におけるサーチ処理(4)の詳細を示すフローチャートである。 この発明の実施の形態6に従うゲーム装置間で実行される人体通信確立処理のシーケンス図である。 この発明の実施の形態6に従うゲームの全体処理を示すフローチャートである。 図59に示すフローチャートのステップS68におけるサーチ処理(5)の詳細を示すフローチャートである。 この発明の実施の形態7に従うゲーム装置間で実行されるオブジェクト交換等処理のシーケンス図である。
符号の説明
14 液晶表示器、16 ハウジング、16a 上側ハウジング、16b 下側ハウジング、16H ヒンジ、16H1,16H2 連結部材、18 操作スイッチ、18a 方向指示スイッチ、18b スタートスイッチ、18c セレクトスイッチ、18d 動作スイッチ、18e 動作スイッチ、18f 動作スイッチ、18h 電源スイッチ、20 タッチパネル、22a,22b 孔、24 スタイラスペン、26 メモリカード、26b バックアップRAM、30a スピーカ、30b 左スピーカ、34 マイクロフォン、40 電子基板回路、42 CPUコア、44 バス、46 コネクタ、48 RAM、48a プログラム記憶領域、48b 画像データ記憶領域、48c 獲得済オブジェクト情報記憶領域、48d タッチパネル操作データ記憶領域、48e 送受信データ一時記憶領域、50 I/F回路、52 第1GPU、54 第2GPU、58 ブートROM、62 第1VRAM、64 第2VRAM64、56 人体通信部、56a 送信部、56b 受信部、60 LCDコントローラ、60a レジスタ、66 無線通信部、68 時計IC、100 ゲーム装置、142 ガラス層、144 液晶層、202 下側導電膜層、202a 正側電極、202b 負側電極、204 上側導電膜層、204a 正側電極、204b 負側電極、206 保護膜層、208 スペーサ(絶縁物)、210 ドット。

Claims (13)

  1. 演算処理部と、表示部と、タッチ座標を検出する座標検出手段と、前記座標検出手段に近接または組み込まれて配置されるアンテナと、当該アンテナに接触または近接する人体を介して他の情報処理装置との間で人体通信を行なうための通信部とを備えた情報処理装置によって実行される情報処理プログラムであって、
    前記情報処理プログラムは、前記演算処理部に、
    選択オブジェクトを表示するための情報に基づいて、前記表示部に前記選択オブジェクトを表示するステップと、
    前記座標検出手段によってプレイヤによるタッチ操作を検出し、当該タッチ操作に応じて前記表示部に表示中の選択オブジェクトについての選択を受付けるステップと、
    前記選択オブジェクトについての選択が継続している間、前記表示部に接触または近接した人体の一部を介して、当該選択オブジェクトに関する情報の送信、および他の情報処理装置から送信される情報の受信の少なくとも一方を含む人体通信を行なうステップとを実行させる、情報処理プログラム。
  2. 前記選択オブジェクトに関する情報の送信完了後、または他の情報処理装置から送信される情報の受信完了後に、予め記憶された対応する情報を更新するステップをさらに実行させる、請求項1に記載の情報処理プログラム。
  3. 他の情報処理装置との間の人体通信の状態を判断するステップと、
    前記選択オブジェクトに関する情報の送信完了前、または他の情報処理装置から送信される情報の受信完了前に、人体通信が途切れたと判断されると、実行中の送信または受信を中止するステップとをさらに実行させる、請求項1または2に記載の情報処理プログラム。
  4. 前記選択オブジェクトについてのプレイヤによるタッチ操作の検出が継続しているか否かを判断するステップと、
    前記選択オブジェクトに関する情報の送信完了前、または他の情報処理装置から送信される情報の受信完了前に、前記選択オブジェクトについてのプレイヤによるタッチ操作の検出が途切れたと判断されると、他の情報処理装置との間の人体通信の状態にかかわらず実行中の送信または受信を中止するステップとをさらに実行させる、請求項1〜3のいずれか1項に記載の情報処理プログラム。
  5. 前記選択オブジェクトに対応付けてパラメータが予め記憶されており、
    前記選択オブジェクトに対応付けられたパラメータは、他の情報処理装置との間で人体通信が確立している期間に応じた値だけ増減する、請求項1〜4のいずれか1項に記載の情報処理プログラム。
  6. 前記選択オブジェクトに関する情報は、前記選択オブジェクトに対応付けられた数値データを含み、
    前記情報処理プログラムは、
    前記選択オブジェクトに対応付けられた数値データの送信毎、または他の情報処理装置から送信される数値データの受信毎に、対応するパラメータを順次更新するステップと、
    他の情報処理装置との間の人体通信の状態を判断するステップと、
    他の情報処理装置との間の人体通信が確立していると判断されている期間において、前記数値データの送信と対応するパラメータの更新とを、交互に連続的に実行するステップとをさらに実行させる、請求項5に記載の情報処理プログラム。
  7. 前記選択オブジェクトに関する情報は、前記選択オブジェクトに対応付けられた数値データを含み、
    前記情報処理プログラムは、
    前記選択オブジェクトに対応付けられた数値データの送信毎、または他の情報処理装置から送信される数値データの受信毎に、対応するパラメータを順次更新するステップと、
    前記選択オブジェクトについてのプレイヤによるタッチ操作の検出が継続している期間において、前記数値データの送信と対応するパラメータの更新とを、交互に連続的に実行するステップとをさらに実行させる、請求項5に記載の情報処理プログラム。
  8. 他の情報処理装置との間で人体通信を行なうための電気的な経路が形成されると、当該他の情報処理装置との間で、対応するそれぞれの選択オブジェクトに対するプレイヤによるタッチ操作の先後を比較するステップと、
    自装置における前記選択オブジェクトに対するプレイヤによるタッチ操作が他の情報処理装置における対応の選択オブジェクトに対するプレイヤによるタッチ操作より先になされた場合に、前記選択オブジェクトに関する情報を他の情報処理装置へ送信し、自装置における前記選択オブジェクトに対するプレイヤによるタッチ操作が他の情報処理装置における対応の選択オブジェクトに対するプレイヤによるタッチ操作より後になされた場合に、他の情報処理装置から送信される情報を受信するステップとを実行させる、請求項1〜7のいずれか1項に記載の情報処理プログラム。
  9. 前記人体通信を行なうステップは、自装置において前記選択オブジェクトとして選択されたキャラクターと、他の情報処理装置において前記選択オブジェクトとして選択されたキャラクターとを交換するステップを含む、請求項1〜のいずれか1項に記載の情報処理プログラム。
  10. 前記人体通信を行なうステップは、自装置において前記選択オブジェクトとして選択されたキャラクターを、他の情報処理装置において選択された保存先に保存するステップを含む、請求項1〜のいずれか1項に記載の情報処理プログラム。
  11. 前記人体通信を行なうステップは、他の情報処理装置との間で人体通信が確立しており、かつ自装置および当該他の情報処理装置のそれぞれにおいて前記座標検出手段によるプレイヤによるタッチ操作が検出されている場合に実行される、請求項1〜10のいずれか1項に記載の情報処理プログラム。
  12. 前記情報処理プログラムは、前記演算処理部に、
    前記選択オブジェクトを他の情報処理装置へあげるモードと、前記選択オブジェクトを他の情報処理装置のオブジェクトと交換するモードとの選択を受付けるステップを実行させる、請求項1〜11のいずれか1項に記載の情報処理プログラム。
  13. 他の情報処理装置と通信可能な情報処理装置であって、
    プレイヤによる画面に対するタッチ座標を検出するための座標検出手段を含む表示部と、
    前記座標検出手段に近接または組み込まれて配置されるアンテナと、
    前記アンテナに接触または近接する人体を介して、他の情報処理装置との間で人体通信を行なうための通信部と、
    選択オブジェクトを表示するための情報を記憶する記憶部と、
    前記記憶部に記憶された情報に基づいて、前記表示部に前記選択オブジェクトを表示する表示制御手段と、
    前記座標検出手段によってプレイヤによるタッチ操作を検出し、当該タッチ操作に応じて前記表示部に表示中の選択オブジェクトの選択が検出されると、当該選択オブジェクトについての選択が継続している間、人体通信によって、当該選択オブジェクトに関する情報の送信、および他の情報処理装置から送信される情報の受信の少なくとも一方を実行する通信制御手段とを備える、情報処理装置。
JP2008154415A 2008-06-12 2008-06-12 ゲーム装置、ゲームプログラムおよび情報処理装置 Active JP5538690B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008154415A JP5538690B2 (ja) 2008-06-12 2008-06-12 ゲーム装置、ゲームプログラムおよび情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008154415A JP5538690B2 (ja) 2008-06-12 2008-06-12 ゲーム装置、ゲームプログラムおよび情報処理装置

Publications (3)

Publication Number Publication Date
JP2009297228A JP2009297228A (ja) 2009-12-24
JP2009297228A5 JP2009297228A5 (ja) 2011-07-21
JP5538690B2 true JP5538690B2 (ja) 2014-07-02

Family

ID=41544759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008154415A Active JP5538690B2 (ja) 2008-06-12 2008-06-12 ゲーム装置、ゲームプログラムおよび情報処理装置

Country Status (1)

Country Link
JP (1) JP5538690B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5558134B2 (ja) * 2010-02-19 2014-07-23 京セラ株式会社 携帯通信機器、通信方法及び通信システム
JP2011209852A (ja) * 2010-03-29 2011-10-20 Nec Personal Products Co Ltd 通信システム、情報処理装置、及び通信方法
JP5772394B2 (ja) * 2011-08-26 2015-09-02 コニカミノルタ株式会社 データ通信装置及びデータ通信方法
JP5643170B2 (ja) * 2011-10-06 2014-12-17 株式会社バンダイ 物品販売装置
JP7054864B2 (ja) * 2019-12-25 2022-04-15 株式会社カプコン ゲームプログラムおよびゲームシステム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000185174A (ja) * 1998-12-24 2000-07-04 Casio Comput Co Ltd 通信機能付き電子機器及び通信制御プログラムを記憶した記憶媒体
JP2000189668A (ja) * 1998-12-25 2000-07-11 Casio Comput Co Ltd 通信機能付き電子機器及び通信制御プログラムを記憶した記憶媒体
JP3841413B2 (ja) * 2003-02-19 2006-11-01 任天堂株式会社 ゲームシステム、ゲーム装置及びゲームプログラム
JP4769678B2 (ja) * 2006-09-28 2011-09-07 日本電信電話株式会社 フィールドゲームシステム、ゲーム装置およびそのユーザ端末

Also Published As

Publication number Publication date
JP2009297228A (ja) 2009-12-24

Similar Documents

Publication Publication Date Title
JP5538690B2 (ja) ゲーム装置、ゲームプログラムおよび情報処理装置
US20180256983A1 (en) Communication game system, game apparatus, server, storage medium storing a program, and game control method
US7634136B2 (en) Touch input program and touch input device
JP4137156B2 (ja) ビデオゲーム処理装置、ビデオゲーム処理方法、およびビデオゲーム処理プログラム
US7425175B2 (en) Match game program
US8414396B2 (en) Game system, game apparatus, storage medium storing game program, and game controlling method
JP2006340744A (ja) ゲームプログラムおよびゲーム装置
JP3874785B1 (ja) ゲームシステムおよびゲームプログラム
JP5048271B2 (ja) ゲームプログラムおよびゲーム装置
JP2007111568A (ja) ゲームプログラムおよびゲーム装置
JP2007275472A (ja) 通信ゲームシステム
JP4181200B2 (ja) ビデオゲーム処理装置、およびビデオゲーム処理プログラム
JP5000132B2 (ja) トレーニングプログラム、トレーニング装置、トレーニングシステム、トレーニング制御方法、ゲームプログラム、ゲーム装置、ゲームシステムおよびゲーム制御方法
JP2016146900A (ja) プログラムおよびゲーム装置
JP4404712B2 (ja) 振動機能付スタイラスペンおよびそれを用いたゲームシステム
JP5444862B2 (ja) ゲームプログラム、ゲーム装置、およびゲームシステム
JP5273900B2 (ja) ゲームプログラム
JP2010273891A (ja) ゲームプログラムおよびゲーム装置
JP4679107B2 (ja) ゲーム装置およびゲームプログラム
JP2006314721A (ja) ゲーム装置およびゲームプログラム
JP4769678B2 (ja) フィールドゲームシステム、ゲーム装置およびそのユーザ端末

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110608

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130812

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140401

R150 Certificate of patent or registration of utility model

Ref document number: 5538690

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140430

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250