説明

複数の情報処理装置を用いた選択肢の選択システム

【構成】通信メニューシステム100は複数の情報処理装置10を含む。各情報処理装置10では共通の選択肢を含むメニューが表示され、特定装置10のユーザのみメニュー選択可能にされる。各装置10では、特定装置10の入力情報に基づく選択に応じた処理の実行結果が表示される。たとえば、特定装置の入力情報が共有化され、各装置10で、共有化された入力情報に基づいてメニューが進行される。メニュー選択不可能な非特定装置10では、選択肢がたとえばグレーアウト表示される。また、非特定装置10でメニューに対する入力があったときには、特定装置10では当該選択された選択肢が震動され、非特定装置10では選択不可能を示すメッセージが表示される。
【効果】特定ユーザのみが選択可能なメニューを同じように表示して処理を進行させることができ、当該メニュー選択の過程を選択不可能なユーザにも開示できる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、複数の情報処理装置を用いた選択肢の選択システム、プログラムおよび情報処理装置に関し、特にたとえば、複数の選択肢からいずれかの選択を行う、複数の情報処理装置を用いた選択肢の選択システム、ならびにそれに用いられるプログラムおよび情報処理装置に関する。
【背景技術】
【0002】
たとえば通信ゲームにおいてメニュー選択を行う技術の一例が非特許文献1に記載されている。この従来技術では、3人のプレイヤと1つのコンピュータで通信対戦ゲームを行う場合には、各プレイヤの操作するキャラクタを選択するためのメニューは、当該ゲーム装置の画面に表示される。そして、コンピュータの操作するキャラクタを選択するためのメニューは、第1プレイヤのゲーム装置の画面のみに表示され、他のプレイヤのゲーム装置の画面には表示されない。
【非特許文献1】ゲームボーイアドバンス用ソフト「F-ZERO FOR GAMEBOY ADVANCE」の取扱説明書、p.18、2001年3月
【発明の開示】
【発明が解決しようとする課題】
【0003】
従来技術では、メニューは、当該メニューの選択操作の可能な装置の画面にのみ表示され、当該メニューの選択操作を行えない他の装置の画面には表示されなかった。つまり、従来技術では、複数の装置で通信してメニュー選択を行う際に、その装置で操作不可能なメニューが表示されることがなかった。したがって、あるメニューを操作不可能な他の装置のユーザは、当該メニューを操作可能な特定装置におけるメニュー選択の状況を知ることができなかったし、そもそも当該メニューが表示されないので、当該メニューを選択不可能なこと自体を知ることさえできなかった。このため、メニュー選択において不公正感を与えるおそれがあった。また、特定装置におけるメニューの選択に対して、非特定装置のユーザは影響を与えることができなかった。
【0004】
それゆえに、この発明の主たる目的は、新規な、複数の情報処理装置を用いた選択肢の選択システム、プログラムおよび情報処理装置を提供することである。
【0005】
この発明の他の目的は、特定装置のユーザのみに許されたメニュー選択の場面を全ユーザに開示できる、複数の情報処理装置を用いた選択肢の選択システム、ならびにそれに用いられるプログラムおよび情報処理装置を提供することである。
【0006】
この発明のさらに他の目的は、複数の装置に表示される同一のメニューを特定装置のユーザのみ選択可能な場合において、他の装置のユーザに選択不可能であることを自覚させることができる、複数の情報処理装置を用いた選択肢の選択システム、ならびにそれに用いられるプログラムおよび情報処理装置を提供することである。
【0007】
この発明のその他の目的は、複数の装置に表示される同一のメニューを特定装置のユーザのみ選択可能な場合において、他の装置のユーザが自己主張することができる、複数の情報処理装置を用いた選択肢の選択システム、ならびにそれに用いられるプログラムおよび情報処理装置を提供することである。
【0008】
この発明のその他の目的は、特定装置のユーザのみ選択可能なメニューの進行を各装置で簡単に処理できる、複数の情報処理装置を用いた選択肢の選択システム、ならびにそれ
に用いられるプログラムおよび情報処理装置を提供することである。
【課題を解決するための手段】
【0009】
第1の発明(請求項1の発明)は、複数の選択肢からいずれかの選択を行う複数の情報処理装置を用いた選択肢の選択システムである。複数の情報処理装置は、特定装置と非特定装置を含む。複数の情報処理装置のそれぞれは、表示器、通信手段、ユーザの入力を受け付ける入力手段、および複数の情報処理装置で共通の複数の選択肢を示す画像を表示器の画面に表示する選択肢表示制御手段を含んでいる。このシステムは、特定装置の入力手段の入力があったときに、当該入力に基づいて複数の選択肢のうちの1つを選択し、当該選択された選択肢に応じた処理を実行する選択肢処理手段を備える。各選択肢表示制御手段は、選択肢処理手段の実行に伴う画像を各表示器の画面に表示する。
【0010】
請求項1の発明では、選択肢の選択システム(100:実施例で相当する参照符号。以下同じ。)は、複数の情報処理装置(10)を用いて、複数の選択肢からいずれかの選択を行うためのものである。複数の情報処理装置は、特定装置と非特定装置とを含み、たとえば特定装置は通信に関する親機であり、非特定装置は子機であってよい。複数の情報処理装置のそれぞれは、表示器(12、14)、通信手段(64)、およびユーザの入力を受け付ける入力手段(20、22)を含む。各情報処理装置の選択肢表示制御手段(42、50、52、60、74、76、78、S127、S143、S171−S177、S181−S183、S193−S199、S201−S203、S235−S237、S241)は、複数の情報処理装置で共通の複数の選択肢を示す画像を表示器の画面に表示する。選択肢処理手段(42、72、76、78、S129−S157、S187−S209、S245−S253、S277−S291)は、特定装置の入力手段の入力があったときに、当該入力に基づいて複数の選択肢のうちの1つを選択し、当該選択された選択肢に応じた処理を実行する。各情報処理装置の選択肢表示制御手段(S143、S149、S157、S169−S185、S193−S203、S233−S243、S251、S291)は、選択肢処理手段の実行に伴う画像を各表示器の画面に表示する。
【0011】
より詳細には、選択肢表示制御手段による「選択肢を示す画像」は各情報処理装置間で同一であることが好ましいが、実質的に同一であれば十分であり、また、同一でなくてもよい。特に、特定装置の画像と非特定装置の画像は完全な同一である必要はなく、特定装置で表示される画像に含まれる選択肢と、非特定装置で表示される画像に含まれる選択肢がそれぞれ対応していれば良い。
【0012】
また、各装置において共通の選択肢を示す画像を表示するためには、以下のようにすればよい。
(1)共通の選択肢を示す画像を表示するためのデータが各装置に元々記憶され、各装置が自己の記憶手段に記憶されたデータに基づいて画像を表示する。そして、通信によりタイミングをあわせて、各装置で当該画像を同時期に表示する。
(2)複数の装置のうちの1つの装置(特定装置であってもよいし、そうでなくてもよい)や別の装置(情報処理装置以外の装置であって本発明のシステムを構成する装置)において、共通の選択肢を示す画像を表示するためのデータが生成または記憶され、各装置に送信される。各装置は受信したデータに基づいて画像を表示する。
【0013】
上記(1)(2)の他にも種々の変形態様が考えられる。例えば、上記1つの装置や上記別の装置で、共通の選択肢を示す画像を表示するための中間的なデータを生成して各装置に送信してもよいし、上記1つの装置の処理を複数の装置で分担してもよいし、上記1つの装置または上記別の装置から直接各装置にデータを送信するのではなく、他の装置を経由して送信したりしてもよい。
【0014】
「選択肢を示す画像」が表示されているときに、特定装置において入力手段による入力があると、選択肢処理手段により、選択肢のうちの1つが選択されて当該選択肢に対応する処理が実行され、各情報処理装置の表示器の画面に当該実行に伴う画像が表示される。
【0015】
選択肢処理手段は、特定装置が備える手段であってもよいし、非特定装置が備える手段であってもよいし、少なくとも特定装置の入力情報を受信可能な上記別の装置が備える手段であってもよい。また、特定装置の入力情報に基づいて選択肢を選択する処理と、選択された選択肢に応じた処理を別々の装置が実行してもよい。さらには、複数の装置で同一の選択肢処理を実行してもよい。
【0016】
「実行に伴う画像」とは、選択された選択肢に対応する処理の実行に関連する画像であり、具体的には、選択された選択肢を示す画像や、選択された選択肢に応じた処理の結果を示す画像(例えば、選択内容または設定内容を示す画像など)である。
【0017】
各装置において「実行に伴う画像」を表示するための処理の態様は以下のものがある。(1)特定装置から各非特定装置に対して、特定装置の入力情報を送信し、各装置において、当該入力情報に基づいて選択肢を選択する処理および選択肢に応じた処理を実行し、「実行に伴う画像」を自己の表示器に表示する。
(2)特定装置が自己の入力情報に基づいていずれの選択肢が選択されたかを決定する処理をして、選択された選択肢を示すデータを各非特定装置に対して送信する。各装置ではこれらのデータを受信して、「実行に伴う画像」を自己の表示器に表示する。
(3)特定装置が自己の入力情報に基づいていずれの選択肢が選択されたかを決定する処理および選択された選択肢に応じた処理(選択肢に応じて各種設定データを記憶する処理など)などを実行して、選択された選択肢を示すデータまたは選択肢に応じた処理の結果データなどを各装置に送信する。各装置ではこれらのデータを受信して、「実行に伴う画像」を自己の表示器に表示する。
(4)特定装置から非特定装置の1つに対して、特定装置の入力情報を送信し、上記(1)〜(3)における特定装置の処理を、特定装置に変わって当該1つの非特定装置でおこなう。
(5)特定装置から上記別の装置に対して、特定装置の入力情報を送信し、上記(1)〜(3)における特定装置の処理を、特定装置に変わって当該別の装置でおこなう。
【0018】
上記(1)〜(5)の他にも種々の変形態様が考えられる。例えば、特定装置、上記1つの非特定装置、上記別の装置において、中間的なデータを生成して各装置に送信してもよいし、各処理を複数の装置で分担してもよいし、装置間のデータ通信を、他の装置を経由して行っても良い。
【0019】
請求項1の発明によれば、複数のユーザで複数の選択肢から何かを決めようとする状況において、特定のユーザによって統一的に選択を行うことができるとともに、複数の情報処理装置で同じように選択に応じた処理を進行させることができる。したがって、特定ユーザにのみに許された選択肢の選択の場面やその過程を、選択不可能なユーザに対しても開示することができる。
【0020】
請求項2の発明は、請求項1の発明に従属し、非特定装置の選択肢表示制御手段は、複数の選択肢を特定装置における表示状態と異なる表示状態で表示する。
【0021】
請求項2の発明では、非特定装置では、選択肢表示制御手段(S201−S203、S241−S243)によって、複数の選択肢が特定装置における表示状態と異なる表示状態で表示される。たとえば選択肢はグレーアウト表示される。したがって、選択不可能な非特定装置のユーザに対して選択不可能であることを容易に自覚させることができる。
【0022】
請求項3の発明は、請求項1または2の発明に従属し、非特定装置の入力手段の入力があったときに、選択入力が不可能であることを当該入力があった非特定装置において通知する通知手段をさらに備える。
【0023】
請求項3の発明では、非特定装置においては、通知手段(42、78、S221−S223、S265−S267)によって、非特定装置の入力手段の入力があったときに、選択入力が不可能であることが通知される。したがって、非特定装置のユーザに対して選択不可能であることを容易に自覚させることができる。
【0024】
請求項4の発明は、請求項1または2の発明に従属し、非特定装置選択処理手段、および通知手段をさらに備える。非特定装置選択処理手段は、非特定装置の入力手段の入力情報に基づいて複数の選択肢のいずれかを選択する。通知手段は、非特定装置選択処理手段によって選択肢のいずれかが選択されたときに、選択入力が不可能であることを当該選択肢を選択した非特定装置において通知する。
【0025】
請求項4の発明では、非特定装置選択処理手段(42、S211−S213、S221、S255−S257、S265)によって、非特定装置の入力情報に基づいていずれかの選択肢が選択される。そして、通知手段によって、選択入力が不可能であることが当該非特定装置において通知される。非特定装置選択処理手段および通知手段は、各非特定装置が備えても良いし、各非特定装置の入力情報を受信可能な他の装置が備えても良いし、それらの装置で分担してもよい。したがって、非特定装置のユーザに対して選択不可能であることを容易に自覚させることができる。
【0026】
請求項5の発明は、請求項1または2の発明に従属し、非特定装置選択処理手段、および表示態様変化手段をさらに備える。非特定装置選択処理手段は、非特定装置の入力手段の入力情報に基づいて複数の選択肢のいずれかを選択する。表示態様変化手段は、非特定装置選択処理手段によって選択肢のいずれかが選択されたときに、特定装置の選択肢表示制御手段に、当該選択肢の表示態様を変化させる。
【0027】
請求項5の発明では、表示態様変化手段(S217、S261)は、非特定装置選択処理手段(S211−S215、S255−S259)から、非特定装置においていずれかの選択肢への選択入力がされた旨の通知を受けて、特定装置の選択肢表示制御手段に、当該選択肢の表示態様を変化させる。表示態様変化手段は、特定装置が備えてもよいし、他の装置が備えて、特定装置に対して表示態様の変化指示を通知してもよい。したがって、非特定装置のユーザは、メニュー選択可能なユーザに対してメニュー選択に関して自己主張することができる。
【0028】
請求項6の発明は、請求項1ないし5の発明のいずれかに従属し、非特定装置は、さらに、選択肢表示制御手段により複数の選択肢が表示されているときに、ユーザ入力に応じて文書データを作成し、当該文書データを特定装置に送信する文書データ送信手段を備える。特定装置は、さらに、文書データ送信手段から送信される文書データを受信して提示する文書データ提示手段を備える。
【0029】
請求項6の発明では、非特定装置は文書データ送信手段(42、80、S121、S349−S359)を備え、特定装置は文書データ提示手段(42、80、S121、S347、S361−S363)を備える。なお、文書データは、基本的に文字のみで書かれた情報であってよい。ただし、相手に趣旨を伝えることができれば十分であるので、この文書データは、ユーザ入力によって描画された文字や絵などを含む情報(たとえば画像データ)であってもよい。したがって、非特定装置のユーザは、特定装置のメニュー選択の
様子を見ながらメニュー選択に関して特定装置のユーザに対して直接的に自己の意見またはメッセージを伝えることができる。
【0030】
請求項7の発明は、請求項1ないし6の発明のいずれかに従属し、複数の情報処理装置のそれぞれは、少なくとも特定装置の入力情報を通信して複数の情報処理装置間で共有化する共有化手段および選択肢処理手段を備え、共有化手段により共有化された特定装置の入力情報に基づいて、当該選択肢処理手段による処理を実行する。各選択肢表示制御手段は、自機の選択肢処理手段による処理結果に基づいて、選択肢処理手段の実行に伴う画像を各表示器の画面に表示する。
【0031】
請求項7の発明では、共有化手段(42、72、S119、S301−S319)によって、少なくとも特定装置の入力情報が複数の情報処理装置間で共有化される。特定装置が各非特定装置に対して入力情報を送信することにより共有化してもよい。また、特定装置が別の装置に入力情報を送信し、当該別の装置が各非特定装置に対して送信してもよい。さらには、特定装置から非特定装置Aに送信した後、非特定装置Aが非特定装置Bに送信してもよい。この共有化された特定装置の入力情報に基づいて、各装置の選択肢処理手段は、選択肢を選択して、当該選択肢に応じた処理を実行する。各装置の選択肢表示制御手段は、当該選択肢に応じた処理の結果に基づいて、当該実行に伴う画像を表示する。したがって、各情報処理装置では、簡単な処理で、全情報処理装置で同じように選択肢に対応する処理を実行することができる。さらに、特定装置に限らず全装置の入力情報を共有化するようにした場合には、全装置で共通の選択肢を表示するようにしているので、全ての装置で各装置における選択肢に対する操作の状況を簡単に把握することができる。したがって、特定装置において、たとえば非特定装置で選択された選択肢の表示状態を変化させるといった処理(上記非特定装置選択処理手段および上記表示態様変化手段の処理など)を簡単に実行することができる。
【0032】
請求項8の発明は、請求項1ないし7の発明のいずれかに従属し、複数の情報処理装置のそれぞれは、当該情報処理装置自体における個別設定のためのメニューに関する処理を実行する個別実行手段をさらに備えている。選択肢処理手段は、複数の情報処理装置の共通設定のためのメニューについてのみ当該処理を実行する。
【0033】
請求項8の発明では、各情報処理装置のための個別設定の場面と、複数の情報処理装置のための共通設定の場面とが存在している。そして、個別実行手段(42、76、S123−S165)によって、個別設定のためのメニューに関する処理が実行される。選択肢処理手段によって、共通設定の場面でのみ、当該処理が実行される。したがって、全装置で共通した設定が必要な場合だけ、選択権のある特定装置の入力情報に基づいてメニューを進行させることができる。
【0034】
請求項9の発明は、請求項1ないし8の発明のいずれかに従属し、選択結果記憶手段、および実行手段をさらに備える。選択結果記憶手段は、選択肢処理手段による処理の結果データを記憶する。実行手段は、選択肢処理手段による処理の後に、複数の情報処理装置の各入力手段の入力情報に応じた所定の処理を、選択結果記憶手段に記憶された結果データに基づいて実行し、実行結果を各表示器の画面に表示する。
【0035】
請求項9の発明では、選択結果記憶手段(42、48、S209)によって、選択肢処理の結果データが記憶される。実行手段(42、82、S291)によって、当該結果データに基づいて、各入力手段の入力に応じた所定の処理が実行され、その実行結果が各画面に表示される。したがって、特定装置の入力に基づいて選択された選択肢に応じた処理の結果に基づいて所定の処理を実行し、当該所定の処理の実行結果を各装置に表示することができる。ここで、選択結果記憶手段は、特定装置が備える手段であってもよいし、非
特定装置が備える手段であってもよいし、前記選択肢処理手段を備える装置と通信可能な上記別の装置が備える手段であってもよい。また、複数の装置が備えても良い。実行手段は、特定装置が備える手段であってもよいし、非特定装置が備える手段であってもよいし、少なくとも特定装置の入力情報を受信可能な上記別の装置が備える手段であってもよい。また、複数の装置が分担して実行してもよい。さらには、複数の装置で同一の処理を実行してもよい。実行手段を備えない装置に対しては、実行手段を備える装置から実行結果が送信され、当該送信された実行結果に基づいて表示すればよい。
【0036】
請求項10の発明は、請求項9の発明に従属し、実行手段は、複数の情報処理装置の各入力手段の入力情報に基づいて通信ゲームを実行するものであり、当該通信ゲームを選択結果記憶手段に記憶された結果データに基づいて実行し、実行結果であるゲーム画像を各表示器の画面に表示する。
【0037】
請求項10の発明では、特定装置の入力に基づいて選択した選択肢に応じた処理の結果に基づいて通信ゲームを実行し、当該通信ゲームの実行の結果であるゲーム画像を表示できる。たとえば、複数の選択肢として複数の通信ゲームを含むメニューから特定装置の入力情報に基づいて選択された通信ゲームを実行することができる。
【0038】
第2の発明(請求項11の発明)は、複数の選択肢からいずれかの選択を行う複数の情報処理装置を用いた選択肢の選択システムの情報処理装置のプログラムである。複数の情報処理装置は、特定装置と非特定装置を含み、複数の情報処理装置のそれぞれは、表示器、通信手段、およびユーザの入力を受け付ける入力手段を含んでいる。このプログラムは、情報処理装置のプロセサを、選択肢表示制御手段、および選択肢処理手段として機能させる。選択肢表示制御手段は、複数の情報処理装置で共通の複数の選択肢を示す画像を表示器の画面に表示する。選択肢処理手段は、特定装置の入力手段の入力があったときに、当該入力に基づいて複数の選択肢のうちの1つを選択し、当該選択された選択肢に応じた処理を実行する。選択肢表示制御手段は、選択肢処理手段の実行に伴う画像を表示器の画面に表示する。
【0039】
請求項11の発明は、上述の第1の発明のシステムに対応するプログラムであり、上述の第1の発明と同様に、特定ユーザにのみに許されたメニュー選択の場面やその過程を選択不可能なユーザに対しても開示することができる。また、このプログラムに従って、つまり、同一のプログラムに従って、複数の情報処理装置で処理が実行されるので、簡単な処理で同じようにメニューを進行させることができる。
【0040】
第3の発明(請求項12の発明)は、特定装置と非特定装置を含む複数の情報処理装置を用いて複数の選択肢からいずれかの選択を行う選択肢の選択システムの情報処理装置である。情報処理装置は、表示器、通信手段、ユーザの入力を受け付ける入力手段、選択肢表示制御手段、および選択肢処理手段を備える。選択肢表示制御手段は、複数の情報処理装置で共通の複数の選択肢を示す画像を表示器の画面に表示する。選択肢処理手段は、特定装置の入力手段の入力があったときに、当該入力に基づいて複数の選択肢のうちの1つを選択し、当該選択された選択肢に応じた処理を実行する。選択肢表示制御手段は、選択肢処理手段の実行に伴う画像を表示器の画面に表示する。
【0041】
請求項12の発明は、上述の第1の発明のシステムおよび第2の発明のプログラムに対応する情報処理装置であり、上述の第1および第2の発明と同様の効果を奏する。
【発明の効果】
【0042】
この発明によれば、複数の情報処理装置で共通の複数の選択肢を表示し、特定装置の入力情報に基づいて選択肢の選択を実行し、当該選択された選択肢に応じた処理の実行に伴
う画像を各画面に表示するようにした。したがって、全装置で同じように選択肢の選択に応じた処理を進行することができるので、特定装置のユーザのみに許可された選択肢からの選択の場面やその過程を全ユーザに開示することができる。
【0043】
また、選択不可能な非特定装置における選択肢の表示状態を特定装置の表示状態と異ならせる場合には、非特定装置のユーザに選択不可能であることを容易に自覚させることができる。
【0044】
また、選択不可能な非特定装置における選択肢への入力に応じて、特定装置における当該選択肢の表示状態を変化させる場合には、非特定装置のユーザをして特定装置による選択に関して自己主張をさせることができる。
【0045】
また、少なくとも特定装置の入力情報を共有化する場合には、選択肢の選択に応じた処理の進行を各装置で簡単に処理できる。
【0046】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【0047】
図1を参照して、この発明の一実施例である通信メニューシステム(以下、単に「システム」という。)100は複数の情報処理装置10を含む。情報処理装置10は、この実施例ではゲーム装置10であり、通信メニューシステム100は通信ゲームシステム100である。この実施例では、通信ゲームにおけるメニュー選択にこの発明が適用された場合を説明するが、通信ゲームに限られず他のアプリケーションにおけるメニュー選択に適用可能である。また、情報処理装置10はゲーム装置に限られず、PC、携帯電話など他のコンピュータないし電子機器であってもよい。
【0048】
なお、図1では、3台のゲーム装置10によってシステム100が構成されるように示してあるが、2台以上であれば、4台以上によって構成するようにしてもよい。システム100では、複数のゲーム装置10の各々は、通信(この実施例では、無線通信)可能に接続されており、1のゲーム装置10が親機となり、親機以外の他のゲーム装置10はすべて子機となる。
【0049】
図2は図1に示すゲーム装置10の外観を示す図解図である。この図2を参照して、ゲーム装置10は、第1の液晶表示器(LCD)12および第2のLCD14を含む。このLCD12およびLCD14は、所定の配置位置となるようにハウジング16に収納され
る。この実施例では、ハウジング16は、上側ハウジング16aと下側ハウジング16bとによって構成され、LCD12は上側ハウジング16aに収納され、LCD14は下側ハウジング16bに収納される。したがって、LCD12とLCD14とは縦(上下)に並ぶように近接して配置される。
【0050】
なお、この実施例では、表示器としてLCDを用いるようにしてあるが、LCDに代えて、EL(Electronic Luminescence)ディスプレイやプラズマディスプレイを用いるよう
にしてもよい。
【0051】
図2からも分かるように、上側ハウジング16aは、LCD12の平面形状よりも大きな平面形状を有し、一方主面からLCD12の表示面を露出するように開口部が形成される。また、上側ハウジング16aには、音抜き孔18が形成される。一方、下側ハウジング16bは、その平面形状が上側ハウジング16aと同じ或いは略同じに選ばれ、横方向の略中央部にLCD14の表示面を露出するように開口部が形成される。また、下側ハウ
ジング16bには、操作スイッチ20(20a,20b,20c,20d,20e,20Lおよび20R)が設けられる。
【0052】
また、上側ハウジング16aと下側ハウジング16bとは、上側ハウジング16aの下辺(下端)と下側ハウジング16bの上辺(上端)の一部とが連結部15によって回動可能に連結されている。したがって、たとえば、ゲームをプレイしない場合には、LCD12の表示面とLCD14の表示面とが対面するように、上側ハウジング16aを回動させて折りたたんでおけば、つまりハウジング16(16a,16b)を閉じれば、LCD12の表示面およびLCD14の表示面に傷がつくなどの破損を防止することができる。
【0053】
なお、図1および図2では、ハウジング16(16a,16b)を開いた状態を示しており、このとき、プレイヤはゲーム装置10を用いてゲームをプレイすることができる。ただし、ハウジング16(16a,16b)を閉じた状態では、後述するように、スリープモードが設定され、プレイヤはゲーム装置10を用いてゲームをプレイすることはできない。
【0054】
操作スイッチ20は、方向指示スイッチ(十字スイッチ)20a,スタートスイッチ20b、セレクトスイッチ20c、動作スイッチ(Aボタン)20d、動作スイッチ(Bボタン)20e、動作スイッチ(Lボタン)20Lおよび動作スイッチ(Rボタン)20Rを含む。スイッチ20a,20bおよび20cは、下側ハウジング16bの一方主面であり、LCD14の左側に配置される。また、スイッチ20dおよび20eは、下側ハウジング16bの一方主面であり、LCD14の右側に配置される。さらに、スイッチ20Lおよびスイッチ20Rは、それぞれ、下側ハウジング16bの上端(天面)の一部であり、上側ハウジング16aとの連結部以外に当該連結部を挟むように、左右に配置される。
【0055】
方向指示スイッチ20aは、ディジタルジョイスティックとして機能し、4つの押圧部の1つを操作することによって、プレイヤによって操作可能なプレイヤキャラクタ(また
はプレイヤオブジェクト)の移動方向を指示したり、カーソルの移動方向を指示したりす
る等に用いられる。スタートスイッチ20bは、プッシュボタンで構成され、ゲームを開始(再開)したり、一時停止(Pause)したりする等に用いられる。セレクトスイッチ20
cは、プッシュボタンで構成され、ゲームモードの選択等に用いられる。
【0056】
動作スイッチ20dすなわちAボタンは、プッシュボタンで構成され、方向指示以外の動作、すなわち、プレイヤキャラクタに打つ(パンチ)、投げる、つかむ(取得)、乗る、ジャンプするなどの任意のアクションをさせることができる。たとえば、アクションゲームにおいては、ジャンプ、パンチ、武器を動かす等を指示することができる。また、ロールプレイングゲーム(RPG)やシミュレーションRPGにおいては、アイテムの取得、武器やコマンドの選択および決定等を指示することができる。さらに、ゲームに関するメニューを決定することもできる。動作スイッチ20eすなわちBボタンは、プッシュボタンで構成され、セレクトスイッチ20cで選択したゲームモードの変更やAボタン20dで決定したアクションの取り消し等のために用いられる。
【0057】
動作スイッチ(左押しボタン)20Lおよび動作スイッチ(右押しボタン)20Rは、プッシュボタンで構成され、左押しボタン(Lボタン)20Lおよび右押しボタン(Rボタン)20Rは、Aボタン20dおよびBボタン20eと同様の操作に用いることができ、また、Aボタン20dおよびBボタン20eの補助的な操作に用いることができる。
【0058】
また、LCD14の上面には、タッチパネル22が装着される。タッチパネル22としては、たとえば、抵抗膜方式、光学式(赤外線方式)および静電容量結合式のいずれかの種類のものを用いることができる。また、タッチパネル22は、その上面(検出面)をステ
ィック24ないしはペン(スタイラスペン)或いは指(以下、これらを「スティック24等」という場合がある。)で、押圧したり、撫でたり、触れたりすることにより操作すると、スティック24等の操作位置の座標を検出して、検出した座標(検出座標)に対応する座標データを出力する。
【0059】
この実施例では、LCD14(LCD12も同じ、または略同じ。)の表示面の解像度は256dot×192dotであり、タッチパネル22の検出面の検出精度もその解像度に対応して256dot×192dotとしてある。ただし、タッチパネル22の検出面の検出精度は、LCD14の表示面の解像度よりも低くてもよく、高くてもよい。
【0060】
LCD12およびLCD14には異なるゲーム画像(ゲーム画面)を表示することができる。たとえば、一方のLCD(たとえば、LCD12)にゲームをプレイするためのゲーム画面を表示し、他方のLCD(たとえば、LCD14)に当該ゲームを操作するための文字情報を入力したり、アイコンを指示したりするためのゲーム画面(操作画面)を表示することができる。したがって、プレイヤはスティック24等でタッチパネル22を操作することにより、LCD14の画面上で、文字情報(コマンド)を入力したり、アイコン(或いは所定の画像)を指示したりすることができる。
【0061】
このように、ゲーム装置10は、2画面分の表示部となるLCD12およびLCD14を有し、いずれか一方(この実施例では、LCD14)の上面にタッチパネル22が設けられるので、2画面(12,14)と2系統の操作部(20,22)とを有する構成になっている。
【0062】
なお、この実施例では、第1のLCD12と第2のLCD14とを縦方向に並べて配置するようにしているが、2つのLCDの配置は適宜に変更され得る。たとえば他の実施例のゲーム装置10では、第1のLCD12と第2のLCD14とを横方向に並べて配置するようにしてもよい。
【0063】
また、この実施例では、2つのゲーム画面をそれぞれ表示する2つのLCDを設けるようにしているが、表示手段としてのLCDの数は適宜変更され得る。たとえば他の実施例のゲーム装置10では、縦長形状の1つのLCDを設けて、表示領域を上下に分けて、2つのゲーム画面をそれぞれの表示領域に表示するようにしてもよいし、あるいは、横長形状の1つのLCDを設けて、表示領域を左右に分割し、2つゲーム画面をそれぞれの表示領域に表示するようにしてもよい。
【0064】
スティック24は、たとえば上側ハウジング16aの側面(右側面)近傍に設けられる収納部(収納穴)26に収納することができ、必要に応じて取り出される。ただし、スティック24を設けない場合には、収納部26を設ける必要もない。
【0065】
さらに、ゲーム装置10はメモリカード(またはゲームカートリッジ)28を含み、このメモリカード28は着脱自在であり、下側ハウジング16bの裏面ないしは下端(底面)に設けられる挿入口30から挿入される。図2では省略するが、挿入口30の奥部には、メモリカード28の挿入方向先端部に設けられるコネクタ(図示せず)と接合するためのコネクタ46(図3参照)が設けられており、したがって、メモリカード28が挿入口30に挿入されると、コネクタ同士が接合され、ゲーム装置10のCPUコア42(図3参照)がメモリカード28にアクセス可能となる。
【0066】
さらにまた、ゲーム装置10はアンテナ32を含み、たとえば、このアンテナ32によって微弱電波を送受信することにより、他のゲーム装置10との間で無線通信が可能である。詳細な説明は省略するが、この実施例で示すゲーム装置10が送受信する微弱電波は
、電波法による規制のかからない強度に設定されている。
【0067】
また、図2では表現できないが、上側ハウジング16aの音抜き孔18と対応する位置であり、この上側ハウジング16aの内部にはスピーカ32(図3参照)が設けられる。さらに、下側ハウジング16bの右上方であり、ゲーム装置10を閉じたときに、音抜き孔18(厳密には、スピーカ32)と対向する位置であり、この下側ハウジング16bの内部にはホール素子36(図3参照)が設けられる。
【0068】
なお、図2では省略するが、たとえば、下側ハウジング16bの裏面側には、電池収容ボックスが設けられ、また、下側ハウジング16bの底面側には、電源スイッチ、音量スイッチ、外部拡張コネクタおよびイヤフォンジャックなどが設けられる。
【0069】
図3はゲーム装置10の電気的な構成を示すブロック図である。図3を参照して、ゲーム装置10は電子回路基板40を含み、この電子回路基板40にはCPUコア42等の回路コンポーネントが実装される。CPUコア42は、バス44を介してコネクタ46に接続されるととともに、RAM48、第1のグラフィック処理ユニット(GPU)50、第2のGPU52、入出力インターフエース回路(以下、「I/F回路」という。)54およびLCDコントローラ60が接続される。
【0070】
コネクタ46には、上述したように、メモリカード28が着脱自在に接続される。メモリカード28は、ROM28aおよびRAM28bを含み、図示は省略するが、ROM28aおよびRAM28bは、互いにバスで接続され、さらに、コネクタ46と接合されるコネクタ(図示せず)に接続される。したがって、上述したように、CPUコア42は、ROM28aおよびRAM28bにアクセスすることができるのである。
【0071】
ROM28aは、ゲーム装置10で実行すべきゲーム(仮想ゲーム)のためのゲームプログラム、画像(キャラクタ画像、背景画像、アイテム画像、アイコン(ボタン)画像、メッセージ画像、カーソル画像など)データおよびゲームに必要な音(音楽)のデータ(音データ)等を予め記憶する。RAM(バックアップRAM)28bは、データセーブ用メモリであり、そのゲームの途中データやゲームの結果データのようなゲームデータ(パラメータ、フラグなど)を記憶する。
【0072】
なお、ゲーム以外のアプリケーションが実行される場合、メモリカード28のROM28aには、当該アプリケーションについてのプログラムおよび当該アプリケーションの実行に必要な画像データ、必要に応じて音データが記憶される。
【0073】
RAM48は、バッファメモリないしはワーキングメモリとして使用される。つまり、CPUコア42は、メモリカード28のROM28aに記憶されたゲームプログラム、画像データおよび音データ等をRAM48にロードし、ロードしたゲームプログラムを実行する。また、CPUコア42は、ゲームの進行に応じて一時的に発生または取得されるデータ(ゲームデータやフラグデータ)をRAM48に記憶しつつゲーム処理を実行する。
【0074】
なお、プログラム、画像データおよび音データ等は、ROM28aから一度に全部または必要に応じて部分的に、かつ、順次的に読み出され、RAM48に記憶される。ただし、この実施例のように、固定的にプログラムおよびデータを記憶している記憶媒体をCPUコア42に直接接続可能なゲーム装置10の場合には、CPUコア42が記憶媒体に直接アクセスできるので、RAM48にプログラムやデータを転送して保持しなくてよい。
【0075】
GPU50およびGPU52は、それぞれ、描画手段の一部を形成し、たとえばシングルチップASICで構成され、CPUコア42からのグラフィックスコマンド(graphics
command :作画命令)を受け、そのグラフィックスコマンドに従ってゲーム画像データ
を生成する。ただし、CPUコア42は、グラフィックスコマンドに加えて、ゲーム画像データの生成に必要な画像生成プログラム(ゲームプログラムに含まれる。)をGPU50およびGPU52のそれぞれに与える。
【0076】
また、GPU50には、第1のビデオRAM(以下、「VRAM」という。)56が接続され、GPU52には、第2のVRAM58が接続される。GPU50およびGPU52が作画コマンドを実行するにあたって必要なデータ(画像データ:キャラクタデータやテクスチャ等のデータ)は、GPU50およびGPU52が、それぞれ、第1のVRAM56および第2のVRAM58にアクセスして取得する。なお、CPUコア42は、描画に必要な画像データをGPU50およびGPU52を介して第1のVRAM56および第2のVRAM58に書き込む。GPU50はVRAM56にアクセスして描画のためのゲーム画像データを作成し、GPU52はVRAM58にアクセスして描画のためのゲーム画像データを作成する。
【0077】
VRAM56およびVRAM58は、LCDコントローラ60に接続される。LCDコントローラ60はレジスタ62を含み、レジスタ62はたとえば1ビットで構成され、CPUコア42の指示によって「0」または「1」の値(データ値)を記憶する。LCDコントローラ60は、レジスタ62のデータ値が「0」である場合には、GPU50によって作成されたゲーム画像データをLCD12に出力し、GPU52によって作成されたゲーム画像データをLCD14に出力する。また、LCDコントローラ60は、レジスタ62のデータ値が「1」である場合には、GPU50によって作成されたゲーム画像データをLCD14に出力し、GPU52によって作成されたゲーム画像データをLCD12に出力する。
【0078】
なお、LCDコントローラ60は、VRAM56およびVRAM58から直接ゲーム画像データを読み出したり、GPU50およびGPU52を介してVRAM56およびVRAM58からゲーム画像データを読み出したりする。
【0079】
I/F回路54には、操作スイッチ20,タッチパネル22、スピーカ32およびホール素子36が接続される。ここで、操作スイッチ20は、上述したスイッチ20a,20b,20c,20d,20e,20Lおよび20Rであり、操作スイッチ20が操作されると、対応する操作信号(操作入力データ)がI/F回路54を介してCPUコア42に入力される。また、タッチパネル22からの座標データ(操作入力データ)がI/F回路54を介してCPUコア42に入力される。さらに、CPUコア42は、ゲーム音楽(BGM)、効果音またはゲームキャラクタ(ゲームオブジェクト)の音声(擬制音)などのゲームに必要な音データをRAM48から読み出し、I/F回路54を介してスピーカ32からその音を出力する。さらにまた、ホール素子36は、磁石(この実施例では、スピーカ32のボイスコイルが巻かれた磁石32a)の磁束を検出すると、磁束に応じた電圧値を出力する。この電圧値に応じた数値データがCPUコア42に入力される。上述したように、上側ハウジング16aを回動させることによりゲーム装置10が閉じられると、ホール素子36は磁石32aの磁束を検出することができる。つまり、CPUコア42は、ホール素子36からの数値データが入力されると、ゲーム装置10が閉じられていること(閉状態)を検出する。一方、CPUコア42は、ホール素子36からの数値データが入力されなければ、ゲーム装置10が開いていること(開状態)を検出する。
【0080】
また、図2に示したように、ゲーム装置10には、アンテナ32が接続されており、このアンテナ32は無線通信ユニット64に接続される。無線通信ユニット64は、バス44を介してCPUコア42に接続される。CPUコア42がゲームデータやコマンドなどのデータを無線通信ユニット64に与えると、無線通信ユニット64は当該データをアナ
ログ信号に変換して、微弱電波でアンテナ32から送信(発信)する。一方、無線通信ユニット64は、他のゲーム装置10から送信された微弱電波を、アンテナ32を介して受信し、受信した微弱電波からアナログ信号を分離し、ディジタル変換した後、当該データをCPUコア42に与える。このようにして、他のゲーム装置10との間で無線通信が行われる。したがって、システム100では、複数のゲーム装置10間で通信して同一の仮想ゲーム(通信ゲーム)を行うことができる。
【0081】
図4にはメモリカード28のROM28aのメモリマップの一例が示される。なお、図4ではメモリマップの一部が示されており、ROM28aにはメニュー処理に必要なその他のプログラムおよびデータが予め記憶されている。
【0082】
プログラム記憶領域70にはこの実施例の通信ゲームプログラム(メニュー処理プログラム)が記憶されている。入力情報通信プログラム記憶領域72には、各ゲーム装置10の操作入力データを含む入力セットデータを全ゲーム装置10で共有化するためのプログラムが記憶されている。このプログラムに従って、各ゲーム装置10は操作入力データを一定時間ごと(たとえば1フレームごと。1フレームはたとえば1/60秒。)に取得する。子機は操作入力データを親機に送信する。親機は各子機から操作入力データを受信して、自分を含む全機の操作入力データを含む入力セットデータを生成し、各子機へ入力セットデータを送信する。各子機は入力セットデータを受信する。このようにして、全ゲーム装置10で操作入力情報が共有化される。この実施例では、この共有化された入力情報すなわち入力セットデータに基づいてメニュー処理が進行されることとなる。
【0083】
なお、操作入力データ(入力情報)の共有化の方法は適宜変更されうる。たとえば、特定装置である親機が、別の装置に送信し、当該別の装置が各非特定装置すなわち各子機に対して送信するようにしてもよい。あるいは、各装置間で直接操作入力データを送受信することによって入力情報を共有化しても良い。また、入力情報はある非特定装置を経由して他の非特定装に送信されてもよい。
【0084】
画像表示プログラム記憶領域74には、表示すべき画面のデータを生成して表示器に表示するためのプログラムが記憶されている。上述のように、CPUコア42は、GPU50または52を用いて画像データ等に基づいて表示すべき画面のデータをVRAM56または58に生成し、LCDコントローラ60を用いてLCD12または14に当該画面を表示する。
【0085】
マーク設定プログラム記憶領域76には、この実施例の通信ゲームにおいて各ユーザ(プレイヤ)の使用するマークを設定するためのプログラムが記憶されている。マーク設定は、後述するように、マーク選択メニューを使用して行われる。この実施例では、共有化された入力セットデータに基づいて、各ゲーム装置10で、全ゲーム装置10のマークの設定が実行される。
【0086】
ゲーム選択プログラム記憶領域78には、全ユーザまたは複数のユーザで通信対戦する仮想ゲームを選択するためのプログラムが記憶されている。このゲーム選択は、後述するように、ゲーム選択メニューを用いて行われる。また、この実施例では、ゲーム選択メニューは、マーク設定メニューにおける全ユーザのマークが選択されたことに応じて表示される新たなメニューである。ゲーム選択処理は、共有化された入力セットデータに基づいて実行される。ただし、この実施例では、ゲーム選択は、複数のゲーム装置10のうち特定のゲーム装置10のユーザのみが許されており、共有化された入力セットデータのうち特定装置10の入力情報に基づいてゲームが選択される。ゲーム選択の決定権を持つ特定装置10は、この実施例では親機である。
【0087】
チャットプログラム記憶領域80には、メニュー選択やその後のゲームの際に複数のユーザ間でチャットを行うためのプログラムが記憶されている。メニュー選択の際にチャットを起動させることで、あるユーザは他のユーザにメニュー選択に関する自分の意見を主張することができる。
【0088】
個別ゲームプログラム記憶領域82には、ゲーム選択メニューで選択されたゲームを実行するためのゲームプログラムが記憶されている。一例として、通信ゲームのカテゴリ(ジャンル)としては、トランプゲーム、ボードゲーム、アクションゲーム等が準備されており、トランプゲームでは、ばばぬき、7ならべ、神経衰弱、ダウト、スピード、ページワン、アメリカンページワン、スローモー等の複数のゲームプログラムが記憶されている。
【0089】
配付用プログラム記憶領域84には、メモリカード28の装着されていない子機にダウンロードするためのプログラムが記憶されている。配付用プログラムは、上述のような入力情報通信プログラム、画像表示プログラム、マーク設定プログラム、ゲーム選択プログラム、チャットプログラムを含み、この実施例では、これらプログラムは自分の装置での実行に使用されるプログラム(記憶領域72−80)と同一のプログラムである。この実施例では、全装置で入力情報を共有化するようにしたので、全装置で同一プログラムを使用して通信ゲーム(通信メニュー処理)を実行することができ、各装置ごとまたは親子別に異なるプログラムを準備する必要がない。また、配布用プログラム記憶領域84には、選択されたゲームを実際に実行するための個別ゲームプログラムも記憶され、これも上述の記憶領域82に記憶される複数のゲームプログラムと同一のプログラムである。ゲーム選択メニューで選択されたゲームのプログラムだけが、メモリカード28を未装着のゲーム装置10にダウンロードされる。
【0090】
データ記憶領域86には、上述のプログラムの実行で使用されるデータが記憶されている。ゲーム名記憶領域88にはこのメモリカード28に記憶されるゲームの名前(タイトル)が記憶されている。画像データ記憶領域90には、メニュー選択において各種画面を生成するためのデータ、たとえばアイコンの画像データ、メッセージの画像データが記憶される。また、各ゲームで使用される画像データ、たとえばキャラクタやオブジェクトの画像データも記憶される。さらに、メニューにおける各選択肢(アイコンないしボタン等)の表示位置データなども記憶されており、このデータに基づいてユーザ操作によって選択されたアイコンを特定することができる。配付用データ記憶領域92には、メモリカード28の装着されていない子機にダウンロードするためのデータが記憶されている。配付用データは上述のような画像データなどを含み、自分の装置での処理に使用されるデータと同一のデータである。
【0091】
図5にはRAM48のメモリマップの一例が示される。なお、この図5では、メモリマップの一部のみが示されており、RAM48にはメニュー処理やゲーム処理に必要なその他のデータが記憶される。
【0092】
識別情報記憶領域100には、このゲーム装置10の識別情報ないし識別番号が記憶される。ユーザ名記憶領域102には、このゲーム装置10を使用または所有するユーザの名前が記憶される。マークID記憶領域104には、このゲーム装置10のユーザが通信ゲームで使用するマークの識別情報ないし識別番号が記憶される。
【0093】
親フラグ記憶領域106には、このゲーム装置10が親機であるか子機であるかを示すフラグが記憶される。たとえば親フラグが1であるときこのゲーム装置10は親機であり、親フラグが0であるときこのゲーム装置10は子機である。
【0094】
メンバ情報テーブル記憶領域108には、この通信ゲームに参加している全メンバの情報が記憶される。具体的には、メンバ情報テーブルでは、各装置の識別情報に対応付けて、ユーザ名、マークID、親機、子機、メモリカード28の有無などの情報が記憶されている。
【0095】
操作入力データ記憶領域110には、I/F回路54を介して取得したタッチパネル22からの操作入力データおよび操作スイッチ20からの操作入力データが記憶される。
【0096】
入力セットデータ記憶領域112には、全装置の操作入力データが記憶される。親機は、自分の操作入力データと受信した各子機の操作入力データから入力セットデータを生成してこの記憶領域112に記憶する。子機は、親機から受信した入力セットデータをこの記憶領域112に記憶する。入力セットデータでは、たとえば各装置の識別情報に対応付けて当該装置の操作入力データが記憶されているので、どの装置の操作入力データであるかを特定できる。
【0097】
進行状況データ記憶領域114には、マーク設定における全メンバの進行状況を示すデータが記憶されている。具体的には、各装置の識別情報に対応付けて、選択されたジャンル、選択されたマークID等の情報が記憶される。
【0098】
また、メモリカード28の装着されていない子機では、さらに記憶領域116および記憶領域118が設けられる。記憶領域116には、親機からダウンロードした配付用プログラムが記憶される。当該子機では、このプログラムに従って処理が実行される。記憶領域118にはダウンロードした配布用データが記憶される。
【0099】
図6にはメモリカード28の装着されたゲーム装置10が起動されたときに表示される開始画面の一例が示される。なお、図6では上下2つの画面が示されており、上段はLCD12に表示される画面であり、下段はLCD14に表示される画面である。他の画面を示す図面においても同様である。
【0100】
開始画面の下画面では、アイコン130および132が表示される。アイコン132には、当該メモリカード28に記憶されているゲームのタイトル(たとえば「だれでもアソビ大全」)が表示されている。上画面には当該ゲーム装置10のユーザ名(たとえば「たろう」)が表示されている。アイコン130がタッチされると、メモリカード28のプログラムが起動される。また、アイコン132がタッチされると、ダウンロードプレイが起動される。なお、アイコンの選択操作は、タッチパネル22のタッチに限られず、アイコンは、図示しないカーソルを操作スイッチ20aで移動させてAボタン20dを押すことによって選択されてもよい。
【0101】
なお、メモリカード28の装着されないゲーム装置10では、アイコン130の位置には「カードがささっていません」といったメッセージが表示される。
【0102】
アイコン130が選択されると、メモリカード28の記憶されたプログラムが起動され、その後、たとえば図7に示すようなトップメニューが表示される。トップメニューの下画面では、アイコン134、136および138が表示される。アイコン134は、1人用ゲームを遊ぶためのものである。アイコン136は、他の人と通信対戦ゲームを遊ぶためのものである。アイコン138は、ゲームにおける各種設定を行うためのものである。アイコン138を選択すると、マーク設定やユーザ名設定などを行うことができる。このように、メモリカード28を装着しているゲーム装置10では予めマーク設定を行える。図7では、このマーク設定が既に行われていて、下画面の左下隅に当該ユーザ(たろう)のマーク(たとえばハムスタ)Mが表示されている。なお、トップメニューの上画面では
、下画面の各アイコンの説明文が表示される。
【0103】
トップメニューでアイコン136が選択されると、たとえば図8に示すような通信選択画面が表示される。通信選択画面の下画面では、アイコン140、142および144が表示される。アイコン140は、プレイルームを開くためのものであり、つまり、自分が親機になって子機を探すためのものである。アイコン142は、プレイルームを探すためのものであり、つまり、自分が子機になって親機を探すためのものである。上画面では、アイコン140および142の説明文が表示される。また、戻るアイコン144は、前メニューの選択に戻るためのものであり、アイコン144が選択されると、図7のトップメニューが表示される。
【0104】
通信選択画面でアイコン140が選択されると、たとえば図9に示すようなメンバ受付画面が表示される。自分は親機になったので、子機を探索する処理が行われる。初期の下画面のメンバリストには親機のユーザ名(たとえば「たろう」)のみが表示される。子機が発見されると、上画面に「対戦相手を見つけました」といったメッセージが表示されるとともに、下画面に発見された子機のユーザ名(たとえば「じろう」)が表示される。下画面にはアイコン146および148が表示される。アイコン146は、参加メンバを決定して通信対戦を開始するためのものである。アイコン146が選択されると、メンバリストに表示された各子機との間で通信接続が確立され、データ送信など通信対戦を開始するための準備が行われる。なお、メンバリストから参加を許可する子機を親機のユーザに選択させるようにしてもよい。準備が終了するまで、親機ではデータ送信中であることを告知する画面(図示しない)が表示される。準備が終了すると、通信対戦ゲームのためのメニュー処理が開始されることとなる。また、戻るアイコン148は、親機になることをキャンセルして前メニューの選択に戻るためのものである。アイコン148が選択されると図8の通信選択画面が表示される。
【0105】
一方、図7の通信選択画面でアイコン142が選択されると、たとえば図10に示すようなプレイルームサーチ画面が表示される。自分は子機になったので、親機を探索する処理が実行される。親機が発見されると、下画面に発見した親機のリストが表示される。リストは当該親機を選択するためのアイコン150を使って表示されてよい。アイコン150には当該親機のユーザ名(たとえば「たろう」)が表示されている。また、下画面にはアイコン152および154が表示される。アイコン152は通信接続する親機を決定するためのものである。親機リストのアイコン150が選択された後にアイコン152が選択されると、選択された親機との間で通信接続が確立され、データ受信など通信対戦を開始するための準備が開始される。準備が終了するまで、子機では、たとえば図11に示すような準備中画面が表示される。準備が終了すると、通信対戦ゲームのためのメニュー処理が開始されることとなる。なお、図10の戻るアイコン154は子機になることをキャンセルして前メニューの選択に戻るためのものである。アイコン154が選択されると図8の通信選択画面が表示される。
【0106】
また、メモリカード28の装着されていないゲーム装置10は子機になる。その開始画面でダウンロードプレイを指示するためのアイコン132(図6参照)が選択されると、親機を探索する処理が実行され、たとえば図12に示すような探索画面が表示される。上画面には当該子機のユーザ名(たとえば「じろう」)が表示されている。親機が発見されると、下画面に発見した親機のリストが表示される。リストは上述のように当該親機を選択するためのアイコン156を使って表示されてよい。アイコン156には、当該親機に装着されているメモリカード28のゲーム名(たとえば「だれでもアソビ大全」)および当該親機のユーザ名(たとえば「たろう」)などが表示される。また、下画面には選択アイコン158および終了アイコン160が表示される。選択アイコン158は通信接続する親機を決定するためのものである。親機リストのアイコン156が選択された後にアイ
コン158が選択されると、選択された親機との間で通信接続が確立され、配付用プログラムのダウンロードが行われる。子機は当該ダウンロードプログラムに従って処理を実行し、データ受信など通信対戦を開始するための準備を行う。この際、図11に示したような準備中画面が表示される。準備が終了すると、通信対戦ゲームのためのメニュー処理が開始されることとなる。なお、図12の終了アイコン160はダウンロードプレイを止めるためのものであり、終了アイコン160が選択されると開始画面(図6参照)が表示される。
【0107】
各ゲーム装置10での準備が終了すると、全ゲーム装置10でタイミングを合わせてメニュー処理が開始される。たとえば親機は開始指示を各子機に送信してメニュー処理を開始し、各子機は当該開始指示の受信に応じてメニュー処理を開始する。
【0108】
この実施例のメニュー処理では、たとえば、マーク選択、ゲーム選択およびゲーム確認等の複数のメニューが準備されている。各メニューでは、全ゲーム装置10で同一の選択肢が表示される。ユーザによる選択肢の決定の操作に応じて当該選択肢に対応する処理が実行される。
【0109】
また、上述の入力情報通信プログラムの実行によって、全ゲーム装置10の入力情報が共有化されている。各ゲーム装置10では、共有化された入力情報(入力セットデータ)を基にメニュー処理を実行することができる。また、上述のチャットプログラムの実行によって、メニュー選択中には複数のゲーム装置10間でチャットを行えるようになっている。
【0110】
具体的には、まず、マーク設定が行われる。マークは、各ゲーム装置10で各ユーザを表示する際に使用されるマークである。つまり、マーク設定処理は、各ユーザの個別の事項を設定するための処理である。このような各ユーザのマークは、各ゲーム装置10の入力情報に基づいて、つまり、各ユーザ自身の選択によって決定される。また、この実施例では、入力情報が共有化されているので、各ゲーム装置10では、全ゲーム装置10の入力情報を含む入力セットデータに基づいて全ゲーム装置10のマーク設定処理を実行することができる。
【0111】
図13には、親機に表示されるマーク設定画面の一例が示される。上画面には全メンバのユーザ名とマークが表示され、下画面にはマーク設定用のメニューが表示される。この実施例のマーク設定用メニューは、階層メニューになっており、上層のジャンルメニュー162と下層のマークメニュー164を含む。また、選択肢の選択を確定させるための決定アイコン166も設けられる。ジャンルメニュー162は、動物、虫−魚、果物、植物、人間などの複数のジャンルアイコンを含む。マークメニュー164には、選択ジャンルに対応する複数のマークが表示される。ジャンルアイコンの選択が変更されると、選択ジャンルに対応する新たなマークメニュー164が表示されることとなる。図13の例では、動物ジャンルが選択されているので、象、ライオン、パンダ、シマウマ、コアラ、ハムスタ等の複数のマークアイコンが表示されている。また、上画面に親機のユーザ(「たろう」)のマーク(「ハムスタ」)が既に表示されている。これは、図7のトップメニューで設定アイコン138が選択されて、既にマークが設定済みであるからである。したがって、この親機では、マーク設定が開始されると、下画面には、当該マークに対応するジャンル(「動物」)が選択された状態で表示され、かつ、当該マークが選択状態(たとえばカーソル付き)で表示されたマークメニューが表示される。
【0112】
また、図14には子機に表示されるマーク設定画面の一例が示される。子機では、上画面には、全メンバのユーザ名およびマークとともに、当該子機のユーザ名を含む歓迎メッセージが表示される。なお、図14の例では、当該子機ではマークが未設定であるため、
当該子機のユーザ(「じろう」)のマークは表示されていない。
【0113】
下画面には、親機と同一のメニューが表示される。つまり、同一の複数の選択肢を有するメニューが表示される。具体的には、同じ選択肢を有するジャンルメニュー162が同じ位置に表示される。ジャンルメニュー162でジャンルが選択されると、選択ジャンルに対応するマークメニュー164が同じ位置に表示される。また、決定アイコン166が同じ位置に表示される。決定アイコン166はマークメニュー164でマークが選択されることによって選択可能状態で表示される。なお、図14の例では、ジャンルメニュー162で虫−魚ジャンルが選択されているので、マークメニュー164では、てんとう虫、蝶、とんぼ、イルカ、亀等の複数のマークアイコンが表示されている。
【0114】
ユーザは、マークメニュー164でマークアイコンを選択して決定アイコン166を選択することによって、マークを決定する。この実施例では、共有化された入力セットデータに基づいて、各ゲーム装置10で全ゲーム装置10のマーク設定が実行される。具体的には、全ゲーム装置10のメニュー選択の状況が、毎フレーム取得される入力セットデータと、ROM28aまたはRAM48に記憶された各アイコン(ジャンル、マーク)の表示位置データとに基づいて特定される。つまり、各ゲーム装置10は、全ゲーム装置10における選択ジャンルと選択マークとを特定することができ、これら選択ジャンルと選択マークの情報を示す進行状況データを生成して更新する。また、各ゲーム装置10では、同様に、入力セットデータと決定アイコン166の表示位置データとに基づいて、全ゲーム装置10で決定アイコン166が選択されたことを特定できる。
【0115】
たとえば、図14の子機では、マークメニュー164でマークアイコンが選択されて決定アイコン166が選択されると、入力セットデータに基づいて、当該ユーザ(「じろう」)のマークは当該マークアイコン(「てんとう虫」)に決定される。すると、図15に示すように、上画面に当該子機の当該マークが表示されるとともに、マークが決定されたことを示すメッセージが表示される。一方、親機でも、同様に、入力セットデータに基づいて全ゲーム装置10のマーク設定処理が実行されているので、当該子機(「じろう」)のマークが「てんとう虫」に決定されたことが特定される。そして、図13に示すように、上画面では、「じろう」のマークとして「てんとう虫」のマークが表示されるとともに、マーク決定メッセージが表示される。
【0116】
自分の入力情報に基づいて決定アイコン166が選択されたと判定されたゲーム装置10では、図15に示すように、下画面に「しばらくお待ち下さい」といったメッセージを含む待機画面が表示される。そして、この実施例では、全てのゲーム装置10で決定アイコン166が選択されたと判定されたときには、各ゲーム装置10は、マーク設定を終了する。そして、メニュー処理をマーク設定と並列的な関係にあるゲーム選択に進めて、新たなメニューを表示する。
【0117】
なお、この実施例では、全ゲーム装置10での決定に応じて、メニュー処理を進行するようにしているが、他の実施例では、たとえば親機の入力情報に基づいて親機で決定アイコン166が選択されたことに応じて、マーク設定からゲーム選択へ移行するようにしてもよい。この場合、親機の決定アイコン166は、親機を除く全てのゲーム装置10で決定アイコン166が選択されるまでは、選択不可能な状態に設定されてよい。あるいは、親機が強制的に決定アイコンを選択した場合、ランダムに子機のマークが決定されてもよい。
【0118】
また、各ゲーム装置10の下画面の下端部には、ジャンルメニュー162、マークメニュー164および決定アイコン166を含むメニュー表示領域とは別の領域が設けられて、当該領域にはチャットタブ168が表示される。チャットタブ168も全ゲーム装置1
0で同一位置に表示される。各ゲーム装置10では、チャットタブ168が自分の入力情報に基づいて選択されたと判定されたときには、チャットが起動されて、下画面に図示しない入力用画面が表示される。ユーザは図示しない入力用画面でメッセージを作成して、当該メッセージのチャットデータを他のゲーム装置10へ送信することができる。
【0119】
また、各ゲーム装置10では、入力情報が共有化されているので、入力セットデータとROM28aまたはRAM48に記憶されているチャットタブ168の表示位置データとに基づいて、他のゲーム装置10でチャットが起動されたことを把握できる。チャットが起動された場合には、当該チャットの起動されたゲーム装置10はマーク設定処理の対象から除外され、入力セットデータに基づく進行状況データの更新が中断される。また、他のゲーム装置10からチャットデータを受信したときには、チャットタブ168が通常の状態とは異なる状態、たとえば点滅状態で表示される。この状態でチャットタブ168が選択されてチャットが起動されると、上画面には受信したチャットデータが表示される。このチャットを使って、各ユーザは他のユーザに直接的なメッセージを送ることができるので、メニュー選択に関して自分の意見を他のユーザに伝えることができる。
【0120】
マーク設定を終了すると、各ゲーム装置10はゲーム選択に移行する。ゲーム選択では、全ゲーム装置10で同一の選択肢を含むメニューが表示される。ゲームの選択は、全ゲーム装置10で通信対戦するゲーム自体を選択することである。つまり、ゲーム選択処理は、全ユーザに共通する事項を設定ないし選択するための処理である。したがって、ゲームは、全ゲーム装置10のうちの特定のゲーム装置(この実施例では親機)の操作によって選択される。このような場合には、少なくとも親機の入力情報を全ゲーム装置10で共有化することによって、各ゲーム装置10で親機の入力情報に基づいてゲームを選択することができる。この実施例では、全ゲーム装置10の入力情報を共有化しているので、入力セットデータに基づいて、各ゲーム装置10で同じようにゲーム選択処理が実行される。
【0121】
図16には、親機に表示されるゲーム選択画面の一例が示される。上画面では、全メンバのユーザ名とマークが表示されるとともに、親機のユーザに対してゲーム選択を促すメッセージが表示される。下画面にはゲーム選択のためのメニューが表示される。この実施例のゲーム選択用メニューは、階層メニューになっており、上層のジャンルメニュー170と下層のゲームメニュー172を含む。また、前メニュー(マーク設定)に戻るための戻るアイコン174も設けられる。ジャンルメニュー170は、お手軽トランプ、大人のトランプ、ボードゲーム、アクションゲームなどの複数のジャンルアイコンを含む。所定のジャンル(たとえば「お手軽トランプ」)が初期選択ジャンルとして予め定められている。ジャンルメニュー170では、選択されたジャンルアイコンが選択状態を示す画像で表示され、他のジャンルアイコンは通常状態を示す画像で表示される。ゲームメニュー172には、選択ジャンルに対応する複数のゲームアイコンが表示される。図16の例では、「お手軽トランプ」ジャンルが選択されており、当該選択ジャンルに対応する複数のゲームアイコン、ばばぬき、7ならべ、神経衰弱、ダウト、スピード、ページワン、アメリカンページワン、スローモーなどが選択肢として表示される。ジャンルアイコンの選択が変更されると、選択ジャンルに対応する新たなゲームメニュー172が表示されることとなる。
【0122】
この実施例では特定装置である親機のユーザのみがゲーム選択を行えるように設定されている。したがって、親機のゲームメニュー172では、基本的に全ゲームアイコンが通常状態を示す画像で表示され、この通常状態で表示されたゲームアイコンは選択可能であることを意味する。なお、図16では、右下のゲームアイコン(「スローモー」)が選択不可能状態を示す画像で表示されている。これは、たとえばプレイ回数が閾値を越えることといった所定条件が満足されたときに選択可能になる特典ゲームである。
【0123】
なお、ゲーム選択においても、上述のマーク設定と同様に、下画面のメニュー表示領域とは別の下端部の領域には、チャットタブ168が表示される。各ユーザは、チャットタブ168を選択してチャットを起動することによって、他のユーザに直接にゲーム選択に関する自己の意見を伝えることができる。
【0124】
図17には、子機に表示されるゲーム選択画面の一例が示される。上画面では、全メンバのユーザ名とマークが表示されるとともに、親機のユーザがゲームを選択していることを知らせるメッセージが表示される。このメッセージは子機のユーザに対してメニュー選択権がないことを示している。
【0125】
下画面には、親機と同一のメニュー、つまり、同一の選択肢を有するゲーム選択用のメニューが表示される。具体的には、同一の複数のジャンルアイコンを含むジャンルメニュー170、選択ジャンルに対応しかつ同一の選択肢を有するゲームメニュー172、および戻るアイコン174が同一位置に表示される。
【0126】
この実施例では、子機は非特定装置であり、つまり、ゲーム選択権が無い。したがって、子機のゲーム選択メニューでは、親機のゲーム選択メニューとは異なる表示状態(表示態様)で各選択肢が表示される。具体的には、ジャンルメニュー170では、各ジャンルアイコンが選択不可能状態を示す画像で表示される。なお、選択ジャンルのみは通常状態の画像で表示される。これは親機によって現在選択されているジャンルを子機ユーザに明確に知らせるためである。選択不可能を示す表示状態は、たとえば通常状態を示す画像を灰色(グレーアウト)に変更することによって表現される。ただし、これに限定されず、選択可能を示す表示状態と異なる表示状態であればよい。また、ゲームメニュー172でも、各ゲームアイコンは、通常状態と異なる表示状態を有する画像、つまり、選択不可能状態を示す画像で表示される。さらに、戻るアイコン174も通常状態とは異なる表示状態で表示される。親機のユーザによって選択ジャンルが変更されたときには、同様に、子機でも選択ジャンルが変更されて、対応するゲームメニュー172に変更される。この実施例では、親機の入力情報が共有化されるので、子機でも、親機の入力情報とROM28aまたはRAM48に記憶されたジャンルアイコンの表示位置データとに基づいて、選択されたジャンルを特定することができる。
【0127】
このように、全ゲーム装置10で同一のメニューを表示することによって、選択権の無いユーザにもメニューを開示することができ、特定のユーザによるメニュー選択の過程を残りのユーザに明らかにすることができる。その上で、選択権の無いゲーム装置10では、メニューの選択肢を通常状態とは異なる表示状態で表示するので、当該ユーザに選択操作が行えないことを自覚させることができる。
【0128】
なお、メニューにおいて選択肢は同一の画像である必要はない。選択肢が各装置10で共通であればよい。換言すれば、複数の選択肢は、各装置10で対応していれば、つまり、実質的に同一であれば足りる。
【0129】
それでも子機のユーザがゲーム選択メニューに対する選択操作を行った場合には、選択権が他者にあることが当該ユーザに通知される。この実施例では、図18に示すように、子機では、自分の入力情報に基づいて、ゲーム選択メニューの表示領域に対する入力があったと判定されたときには、入力位置に対応する位置に、親機のユーザが操作していることを示すメッセージが表示される。なお、通知方法は表示に限られず、たとえば当該メッセージの音声または警告音などの音を出力するようにしてもよい。このようにして、非特定装置では当該ユーザのメニューに対する操作に応じてメニュー選択が不可能であることを通知するようにしたので、非特定装置のユーザにはメニュー選択不可能であることを明
確に知らせて自覚させることができる。
【0130】
さらに、この実施例では、親機の入力情報とともに子機の入力情報も共有化するようにしているので、子機でメニュー表示領域に対する操作があったことを、親機および他の子機で把握することができる。つまり、入力セットデータのうちの子機の入力情報とROM28aまたはRAM48に記憶されたゲームアイコンの表示位置データとに基づいて、子機で、ゲームメニュー172のゲームアイコンに対する操作が行われたか否かを判定することができる。この実施例では、ある子機でゲームアイコンに対する操作があったとき、他のゲーム装置10では、当該ゲームアイコンの表示状態(表示態様)を変化させるようにした。たとえば、図18の子機では、「7ならべ」のゲームアイコンが選択されているので、図19に示すように、親機(および他の子機)では、当該ゲームアイコンを震わせるようにした。なお、この表示状態の変化は、アイコンを震わせることに限られず、たとえば回転させるなど動きを伴う変化であってもよいし、色の変化であってもよい。このように、メニュー選択不可能なユーザの選択肢に対する操作に応じて選択肢の表示状態を変化させるようにしたので、選択不可能なユーザは、選択可能なユーザに対して自己の要望を間接的に主張することができる。同時に、選択可能なユーザは、選択不可能なユーザが選択を要望しているアイコンを知ることができる。また、他の選択不可能なユーザに対しても同様である。
【0131】
親機のユーザは、ゲームメニュー172でゲームアイコンを選択することによって、通信対戦ゲームを選択することができる。各ゲーム装置10では、入力セットデータのうちの親機の入力情報と決定アイコン166の表示位置データとに基づいて、親機で選択されたゲームアイコンを特定できる。親機でゲームアイコンが選択されたとき、各ゲーム装置10は、ゲーム選択を終了する。そして、メニュー処理をゲーム選択と並列的な関係にあるゲーム確認に進めて、新たなメニューを表示する。
【0132】
ゲーム選択を終了すると、各ゲーム装置10はゲーム確認に移行する。ゲーム確認では、上述のゲーム選択と同様に、全ゲーム装置10で同一の選択肢を含むメニューが表示される。また、ゲーム確認も、ゲーム選択と同様に、全ユーザに共通する事項を設定ないし選択するための処理である。したがって、ゲーム確認メニューは、特定装置(この実施例では親機)の操作によって選択される。また、この実施例では、全ゲーム装置10の入力情報を共有化しているので、入力セットデータに基づいて、各ゲーム装置10で同じようにゲーム確認処理が実行される。
【0133】
図20には、親機に表示されるゲーム確認画面の一例が示される。上画面には、選択されたゲームの説明文が表示されるとともに、メニュー選択を促すメッセージが表示される。下画面には、ゲーム確認用のメニューが表示され、具体的には、アイコン176、178および178が選択肢として表示される。アイコン176は、選択されたゲームの開始を指示するためのゲームスタートアイコンであり、このアイコン176の選択に応じて選択ゲームが実行されることとなる。アイコン178は、設定変更の開始を指示するためのアイコンであり、このアイコン178の選択に応じて、たとえばゲームのルール設定、メンバ変更の設定などが行われる。また、アイコン180は前メニュー(ゲーム選択メニュー)に戻るためのアイコンである。ゲーム確認メニューも、ゲーム選択と同様に、特定装置である親機のユーザによって選択されるので、各選択肢は、通常状態を示す画像で表示され、選択可能であることが示される。
【0134】
さらに、ゲーム確認でも、上述のマーク設定およびゲーム選択と同様に、下端部の領域にはチャットタブ168が設けられ、ゲーム確認メニューの選択に関して他のユーザにチャットによって直接的に意見を伝えることができるようになっている。
【0135】
図21には、子機に表示されるゲーム確認画面の一例が示される。上画面には、親機で選択されたゲームの説明文とともに、ゲーム選択がなされたことを示すメッセージが表示される。下画面には、親機と同一のメニューが表示される。つまり、同一の選択肢を有するメニューが表示され、具体的には、ゲームスタートアイコン176、設定変更アイコン178および戻るアイコン180が同じ位置に表示される。子機では、メニュー選択権が無いので、各選択肢は、上述のゲーム選択の場合と同様にして、親機のそれの表示状態と異なる表示状態で表示される。たとえば、図21では、各アイコン176、178および180は灰色で表示され、選択不可能であることが示される。
【0136】
また、ゲーム確認でも、上述のゲーム選択と同様に、全ゲーム装置10の入力情報が共有化されており、各ゲーム装置10では、入力セットデータに基づいて全ゲーム装置10での操作を把握できる。子機では、自分の入力情報に基づいてアイコン176、178および180を含むメニュー表示領域に対する入力があったと判定されるときには、当該入力位置に、ゲーム選択の場合(図18)と同様に、親機が操作していることを示すメッセージが表示される。また、子機で、アイコン176、178または180が選択されたときには、他のゲーム装置10では、ゲーム選択の場合(図19)と同様に、対応するアイコン176、178または180の表示状態が震動または色変更などによって変化される。
【0137】
親機のユーザは、ゲーム確認メニューでゲームスタートアイコン176を選択することによって、選択ゲームの実行を開始することができる。各ゲーム装置10では、入力セットデータのうちの親機の入力情報とアイコン176の表示位置データとに基づいて、親機でアイコン176が選択されたことを把握できる。親機のユーザによってゲームスタートが指示されたとき、各ゲーム装置10はゲーム確認を終了する。そして、ゲームスタートアイコンに対応づけられた処理、すなわち、選択されたゲームの処理を開始する。なお、メモリカード28の装着されていない子機がメンバ中に存在する場合には、当該子機は選択ゲームを実行するためのゲームプログラムを親機からダウンロードし、ダウンロードしたゲームプログラムに従ってゲーム処理を実行する。
【0138】
図22から図33には、各ゲーム装置10の動作の一例が示される。電源が投入されると、CPUコア42は処理を開始して、図22のステップS1で、GPU50および52ならびにLCDコントローラ60を用いて開始画面をLCD12およびLCD14に表示する。これによって図6に示したような画面が表示される。メモリカード28が装着されている場合には、ゲーム名が記されたアイコン130が、アイコン132とともにLCD14に表示される。なお、LCD12にはユーザ名が表示される。
【0139】
次に、ステップS3で、CPUコア42は、操作入力データをI/F回路54を介してRAM48の記憶領域110に取得する。操作入力データはタッチパネル22からの座標データおよび操作スイッチ20からの操作データである。この操作入力データと画面上の各アイコンの表示位置データ等に基づいて、ステップS5およびS7で、アイコン130または132が選択されたか否かが判定される。
【0140】
なお、このゲーム装置10では、アイコン選択判定においては、たとえば、タッチパネル22からの座標データの場合には、当該座標がアイコンの表示領域に含まれるか否かが判定される。操作スイッチ20からの操作データの場合には、たとえばAボタン20dが押されたときのカーソルの位置がアイコンの表示位置であるか否かが判定される。各アイコンの表示位置データは、CPUの内蔵ROM、メモリカード28のROM28a、またはRAM48(ダウンロードされた場合)に記憶されている。
【0141】
ステップS5で、CPUコア42は、メモリカード28のプログラムの実行を指示する
アイコン130が選択されたか否かを判定する。ステップS5で“NO”であれば、CPUコア42は、ステップS7で、ダウンロードプレイの実行を指示するアイコン132が選択されたか否かを判定する。メモリカード28の装着されていないゲーム装置10のユーザは、アイコン132を選択することによって、通信対戦ゲームに参加することができる。この場合、ステップS7で“YES”と判定され、処理は図25に進む。なお、ステップS7で“NO”であれば、処理はステップS3に戻る。
【0142】
一方、ステップS5で“YES”であれば、CPUコア42は、ステップS9で、メモリカード28のROM28aのプログラム記憶領域70に記憶されたプログラムの実行を開始する。以後の処理は当該プログラムに従って実行される。
【0143】
ステップS11で、CPUコア42は、トップメニュー画面をLCD12および14に表示する。トップメニュー画面は、図7に示したように、アイコン134、136および138を含む。ユーザはアイコン136を選択することで他のユーザとの通信対戦ゲームをプレイすることができる。CPUコア42は、ステップS13で操作入力データをRAM48に取得し、ステップS15で通信対戦、すなわち、アイコン136が選択されたか否かを判定する。
【0144】
ステップS15で“NO”であれば、CPUコア42は、ステップS17で他のアイコン134または138が選択されたか否かを判定する。ステップS17で“NO”であればステップS13に戻る。また、ステップS17で“YES”であれば、CPUコア42はステップS19で選択されたアイコンに対応する処理を実行する。たとえば、アイコン138の選択に応じて開始される設定処理では、マーク設定やユーザ名の設定などを実行することができ、CPUコア42は当該処理を終了するとステップS11へ戻ってトップメニューを再び表示する。なお、図22では簡略化のためにステップS19の後に処理がステップS11に戻るように記載されるが、アイコン134が選択された場合には、1人用のゲームが実行されて終了される。
【0145】
一方、ステップS15で“YES”であれば、つまり、アイコン136(みんなで遊ぶ)が選択された場合には、CPUコア42は、ステップS21で、通信選択画面をLCD12および14に表示する。通信選択画面は、図8に示したように、アイコン140、142および144を含む。ユーザは、アイコン140を選択することで自分のゲーム装置10を親機にすることができ、アイコン142を選択することで自分のゲーム装置10を子機にすることができる。
【0146】
CPUコア42は、ステップS23で操作入力データをRAM48に取得し、続くステップS25からS29で、当該操作入力データに基づいていずれかのアイコンが選択されたか否かを判定する。具体的には、ステップS25で、CPUコア42は、戻るアイコン144が選択されたか否かを判断し、“YES”であれば、ステップS11に戻って、1つ前のメニューすなわちトップメニューの選択からやり直す。
【0147】
ステップS25で“NO”であれば、CPUコア42は、ステップS27でアイコン140(プレイルームを開く)が選択されたか否かを判断する。ステップS27で“YES”であれば、つまり、親機になることが選択された場合には、CPUコア42は、ステップS31で、親フラグをオンにする、つまり、RAM48の親フラグ記憶領域106に1を記憶する。ステップS31を終了すると処理は図23のステップS35に進む。
【0148】
また、ステップS27で“NO”であれば、CPUコア42は、ステップS29でアイコン142(プレイルームを探す)が選択されたか否かを判断する。ステップS29で“YES”であれば、つまり、子機になることが選択された場合には、CPUコア42は、
ステップS33で、親フラグをオフにする、つまり、RAM48の親フラグ記憶領域106に0を記憶する。ステップS33を終了すると処理は図24のステップS63に進む。
【0149】
親機になることが選択された場合ステップS31で親フラグをオンにした後、図23のステップS35で、CPUコア42は、通信接続処理を開始する。この処理によって、子機の探索、発見した子機との通信接続などが行われる。たとえば、CPUコア42は、識別情報、ユーザ名、ゲーム名などを含む親情報を生成して、当該親情報を無線通信ユニット64を介して送信(たとえばブロードキャスト)する。なお、CPUコア42は、識別情報としてゲーム装置10の識別情報を用いてもよいし、あるいは、通信ゲームセッション用の識別情報をRAM48の記憶領域100に生成して当該識別情報を使用してもよい。また、CPUコア42は、無線通信ユニット64を介して子機から送信される子情報の受信を試みる。子情報は、識別情報、ユーザ名、カードの有無などの情報を含む。
【0150】
また、ステップS37で、CPUコア42は、メンバ受付場面をLCD12および14に表示する。メンバ受付場面は図9に示すようにメンバを決定するためのアイコン146および戻るアイコン148を含む。下画面にはさらに当該ゲーム装置10のユーザ名が、プレイルームの名前およびそのメンバとして表示される。
【0151】
続いて、ステップS39で、CPUコア42は、無線通信ユニット64を介して子情報を受信したか否かを判断する。ステップS39で“YES”であれば、CPUコア42は、当該受信した子情報をRAM48の所定領域に記憶する。そして、ステップS41で、CPUコア42は、子情報に含まれる子機のユーザ名情報に基づいて、子機のユーザ名をプレイルームのメンバ名として表示する(図9参照)。なお、メンバ受付画面では、メンバ決定アイコン146は、子機を発見したことによって選択可能状態に変化される。
【0152】
ステップS41を終了し、またはステップS39で“NO”である場合には、CPUコア42は、ステップS43で、操作入力データをRAM48に取得し、続くステップS45およびS47で、いずれかのアイコンが選択されたか否かを判定する。
【0153】
つまり、ステップS45で、CPUコア42は、アイコン146(メンバ決定)が選択されたか否かを判定する。ステップS45で“NO”であれば、CPUコア42は、ステップS47で戻るアイコン148が選択されたか否かを判定する。ステップS47で“NO”であれば、処理はステップS39へ戻る。
【0154】
ステップS47で“YES”であれば、CPUコア42は、ステップS49で通信接続処理を終了して、図22のステップS21へ戻り、前のメニューである通信選択からやり直す。
【0155】
一方、ステップS45で“YES”であれば、CPUコア42は、ステップS51で各子機との通信接続を確立する。たとえば、CPUコア42は、接続許可を示すデータを各子機に送信する。
【0156】
続いて、ステップS53で、CPUコア42は、データ送信中であることを示す画面(図示せず)をLCD12および14に表示する。そして、ステップS55で、CPUコア42は、配付用プログラム記憶領域84から必要なプログラムを読み出して、メモリカード28を未装着の子機に対して当該プログラムを送信する。ここで送信されるプログラムには個別ゲームプログラムは含まれない。なお、プログラムばかりでなく配付用データ記憶領域92から必要なデータも送信される。
【0157】
また、CPUコア42は、ステップS57で、メンバ情報テーブルを生成し、RAM4
8の記憶領域108に記憶する。メンバ情報テーブルは通信接続された全メンバの基本情報である。このテーブルでは、識別情報に対応付けて、ユーザ名、マークID、メモリカード28の有無、親機か子機か等を示す情報が記憶される。続いて、ステップS59で、CPUコア42は、メンバ情報テーブルを各子機に送信する。なお、子機には、メンバ情報テーブルの情報のうち、識別情報に対応付けられたユーザ名およびマークIDのみを送信するようにしてもよい。
【0158】
そして、ステップS61で、CPUコア42は、開始指示を各子機に送信する。これによって、全ゲーム装置10でタイミングを合わせてメニュー処理が開始されることとなる。ステップS61を終了すると処理は図26のステップS119に進む。
【0159】
一方、通信選択画面で子機になることが選択された場合図22のステップS33で親フラグがオフした後、図24のステップS63で、CPUコア42は、通信接続処理を開始する。この処理によって、親機の探索、発見した親機との通信接続などが行われる。たとえば、CPUコア42は、無線通信ユニット64を介して親情報(識別情報、ユーザ名、ゲーム名などを含む)の受信を試みる。
【0160】
また、CPUコア42は、ステップS65で、探索画面をLCD12および14に表示する。探索画面は、図10に示したように、通信する親機を決定するための決定アイコン152と戻るアイコン154を含む。
【0161】
ステップS67では、CPUコア42は、同一ゲームの親情報を受信したか否かを判断する。ステップS67で“YES”であれば、CPUコア42は、受信した親情報をRAM48の所定領域に記憶し、ステップS69で、当該親機のユーザ名を下画面の親機アイコン150として表示する。複数の親機が発見された場合には、ユーザは、親機リストの中から所望の親機アイコン150を選択することによって、通信する親機を選択できる。
【0162】
続いて、ステップS71で、CPUコア42は操作入力データをRAM48に取得する。そして、ステップS73で、CPUコア42は、親機アイコン150が選択された状態で決定アイコン152が選択されたか否かを判断する。
【0163】
ステップS73で“NO”であれば、CPUコア42はステップS75で戻るアイコン154が選択されたか否かを判断する。ステップS75で“NO”であれば処理はステップS67に戻る。また、ステップS75で“YES”であれば、CPUコア42は、ステップS77で通信接続処理を終了し、図22のステップS21へ戻って、前のメニューである通信選択からやり直す。
【0164】
一方、ステップS73で“YES”である場合、つまり、親機が決定された場合には、CPUコア42は、ステップS79で、当該選択された親機との通信接続を確立する。たとえば、CPUコア42は、識別情報、ユーザ名、メモリカード28の有無などの情報を含む子情報を生成し、当該子情報を無線通信ユニット64を介して親機に送信する。そして、CPUコア42は、親機から送信される接続許可を受信する。
【0165】
続いて、ステップS81で、CPUコア42は、図11に示したような準備中画面をLCD12および14に表示する。また、ステップS83で、CPUコア42は、親機から送信されるメンバ情報テーブルを受信して、RAM48の記憶領域108に記憶する。そして、CPUコア42は、親機からの開始指示の受信待ち処理を実行し、ステップS85で、開始指示を受信したか否かを判定する。開始指示を受信すると処理は図26のステップS119へ進む。
【0166】
一方、開始画面でダウンロードプレイが選択された場合には、図25のステップS87で、CPUコア42は、通信接続処理を開始し、上述のステップS63と同様にして親情報の受信を試みる。また、ステップS89で、CPUコア42は、探索画面をLCD12および14に表示する。図12に示したように、探索画面には親機を決定するための選択アイコン158とダウンロードプレイを終了するためのアイコン160が表示される。また、親機を発見したときには、当該親機のゲーム名およびユーザ名の記されたアイコン156が表示される。すなわち、ステップS91で、CPUコア42は、親情報を受信したか否かを判断する。ステップS91で“YES”であれば、CPUコア42は、受信した親情報をRAM48の所定領域に記憶するとともに、ステップS93で、当該親機のゲーム名とユーザ名を含む親機アイコン156を親機リストとしてLCD14に表示する。
【0167】
ステップS91で“NO”である場合、またはステップS93を終了すると、CPUコア42は、ステップS95で操作入力データをRAM48に取得する。そして、ステップS97で選択アイコン158が選択されたか否かを判断する。ステップS97で“NO”であれば、CPUコア42は、ステップS99で終了アイコン160が選択されたか否かを判断する。ステップS99で“NO”であれば処理はステップS91へ戻る。また、ステップS99で“YES”であれば、CPUコア42は、ステップS101で通信接続処理を終了する。通信ゲームを行うためのプログラムをダウンロードできなかったので、このまま処理を終了する。
【0168】
一方、ステップS97で“YES”である場合、つまり、親機アイコン156が選択された状態で選択アイコン158が選択された場合には、CPUコア42は、ステップS103で上述のステップS79と同様にして、選択された親機との通信接続を確立する。
【0169】
そして、ステップS105で、CPUコア42は、ダウンロード中であることを示す画面(図示せず)をLCD12および14に表示する。また、ステップS107で、CPUコア42は、親機から送信される配付用プログラムを受信して、ダウンロードプログラムとしてRAM48の記憶領域116に記憶する。また、CPUコア42は、親機から送信される配付用データも受信して、RAM48の記憶領域118に記憶する。
【0170】
ステップS107のダウンロードを完了すると、CPUコア42は、ステップS109で、ダウンロードプログラムの実行を開始する。以後の処理はダウンロードプログラムに従って実行される。
【0171】
CPUコア42は、ステップS111で、親フラグ記憶領域106に0を記憶する。また、ステップS113で、CPUコア42は、図11に示したような準備中画面をLCD12および14に表示する。さらに、ステップS115で、CPUコア42は、親機から送信されるメンバ情報テーブルを受信して、RAM48の記憶領域108に記憶する。そして、ステップS117で、CPUコア42は、受信待ち処理を実行して、親機から送信される開始指示を受信したか否かを判定する。開始指示を受信すると、処理は図26のステップS119へ進む。
【0172】
図26のステップS119では、CPUコア42は、入力情報通信プログラムの実行を開始し、つまり、入力情報共有化処理を開始する。入力情報共有化処理は他の処理と並列的に実行される。この実施例では、入力情報共有化処理によって全ゲーム装置10の入力情報が全ゲーム装置10で共有される。各ゲーム装置10は基本的には共有化入力情報を使用してメニュー処理を実行する。入力情報共有化処理の動作の一例が図34に詳細に示される。この入力情報共有化処理の各ステップは、メニュー処理が終了するまで一定時間ごと(たとえば1フレームごと)に繰り返し実行される。
【0173】
具体的には、図34の最初のステップS301で、CPUコア42は、操作入力データをI/F回路54を介して取得し、RAM48の記憶領域110に記憶する。次にステップS303でCPUコア42は親フラグ記憶領域106に1が記憶されているか否か、つまり、このゲーム装置10が親機か子機かを判断する。親機の場合にはステップS305からS311の処理が実行され、子機の場合にはステップS313からS319の処理が実行される。
【0174】
ステップS303で“YES”であれば、つまり、このゲーム装置10が親機である場合には、CPUコア42は、ステップS305で、無線通信ユニット64を介して各子機から操作入力データを受信したか否かを判断する。後述するように、子機は一定時間ごとに操作入力データを親機に送信するので、通信状態が安定している限り、親機は全ての子機から操作入力データを受信できる。ステップS305で“YES”であれば、CPUコア42は、ステップS307で、受信データから各子機の操作入力データを取得する。ステップS305で“NO”であれば、つまり、通信エラーなどで子機から操作入力データを受信できなかった場合には、処理はそのままステップS309へ進む。
【0175】
ステップS309で、CPUコア42は、ステップS301で取得した自分の操作入力データと、ステップS307で取得した各子機の操作入力データとから、入力セットデータを生成して、RAM48の記憶領域112に記憶する。入力セットデータは、各ゲーム装置10の識別情報に対応付けられた各ゲーム装置10の操作入力データを含む。なお、受信できなかった子機の操作入力データとしてはたとえば操作なしを示すデータを記憶する。そして、ステップS311で、CPUコア42は、入力セットデータを各子機に無線通信ユニット64を介して送信する。ステップS311を終了すると処理はステップS301へ戻る。
【0176】
一方、ステップS303で“NO”であれば、つまり、このゲーム装置10が子機である場合には、CPUコア42は、ステップS313で操作入力データを親機に無線通信ユニット64を介して送信する。
【0177】
また、ステップS315で、CPUコア42は、無線通信ユニット64を介して親機から入力セットデータを受信したか否かを判断する。上述のように、親機は一定時間ごとに入力セットデータを全子機に送信するので、通信状態が安定している限り、子機は親機から入力セットデータを受信できる。
【0178】
ステップS315で“YES”であれば、CPUコア42は、ステップS317で、受信データから入力セットデータを取得して、RAM48の記憶領域112に記憶する。一方、ステップS315で“NO”であれば、つまり、通信エラーなどで親機から入力セットデータを受信できなかった場合には、CPUコア42は、ステップS319で入力セットデータを初期化して、各ゲーム装置10の操作入力データとしてたとえば操作なしを示すデータを記憶する。ステップS317またはS319を終了すると処理はステップS301へ戻る。
【0179】
このように、図26のステップS119で入力情報共有化処理が開始されることによって、全ゲーム装置10に入力セットデータが記憶され、つまり、全ゲーム装置10の入力情報が共有化される。
【0180】
続いて、図26のステップS121で、CPUコア42は、チャットプログラムの実行を開始し、つまり、チャット処理を開始する。このチャット処理も他の処理と並列的に実行される。チャット処理の動作の一例が図35に詳細に示される。チャット処理はメニュー処理が終了したときに終了される。
【0181】
チャット処理を開始すると、図35の最初のステップS331で、CPUコア42は、チャットタブ168を下画面に表示する(図13参照)。チャットタブ168は下画面のメニュー表示領域以外の所定領域に表示される。このチャットタブ168が選択されることによって画面上でチャットが開始されることとなる。
【0182】
CPUコア42は、チャットタブ168が選択されるまで、続くステップS333からS341の処理を一定時間ごと(たとえば1フレームごと)に繰り返し実行する。ステップS333では、CPUコア42は、他のゲーム装置10からチャットデータを受信したか否かを判断する。ステップS333で“YES”であれば、CPUコア42は、ステップS335で、受信したチャットデータをRAM48の所定領域に記憶する。また、ステップS337で、CPUコア42は、チャットタブ168を点滅させる。これによって、ユーザに他のユーザからチャットのメッセージを受け取ったことを知らせる。
【0183】
ステップS337を終了し、または、ステップS333で“NO”の場合には、CPUコア42は、ステップS339で、RAM48の記憶領域110から操作入力データを読み出す。なお、入力セットデータ記憶領域112の自分の識別情報に対応付けられた操作入力データを読み出すようにしてもよい。
【0184】
そして、ステップS341で、CPUコア42は、当該操作入力データとROM28aまたはRAM48に記憶されたチャットタブ168の表示位置データとに基づいて、チャットタブ168が選択されたか否かを判断する。ステップS341で“NO”であれば処理はステップS33に戻る。
【0185】
一方、ステップS341で“YES”であれば、CPUコア42は、ステップS343で、チャットの入力用画面を下画面に表示する。また、ステップS345で、CPUコア42は、チャットデータがRAM48の所定領域に既に記憶されているか否か、つまり、受信済みのチャットデータがあるか否かを判断する。ステップS345で“YES”であれば、CPUコア42は、ステップS347で、チャットデータを上画面に表示する。これによって、他のユーザからのメッセージを受信していた場合には、当該メッセージを上画面に表示できる。なお、チャットデータを受信していない場合には、処理はそのままステップS349に進む。
【0186】
CPUコア42は、続くステップS349からS363の処理を、チャット終了が選択されるまで一定時間ごと(たとえば1フレームごと)に繰り返し実行する。ステップS349では、CPUコア42は、RAM48の記憶領域110から操作入力データを読み出す。そして、当該操作入力データに基づいて、ステップS351からS355で、どのような操作がなされたかを判断する。
【0187】
ステップS351では、CPUコア42は、メッセージ生成のための操作であるか否かを判断する。たとえば、入力用画面では、ユーザは、文字を選択することで文章を作成することができるし、あるいは、メッセージ作成領域にタッチパネル22で直接的にメッセージを描くことができるので、タッチパネル22の入力座標がメッセージ作成領域の座標であるか否かが判断される。ステップS351で“YES”であれば、CPUコア42は、ステップS357で当該操作入力データに基づいてRAM48の所定領域にチャットデータ(文書データ)を生成する。なお、文書データは、基本的に文字のみで書かれた情報(テキストデータ等)であってよい。ただし、相手に意味が伝われば目的を果せるので、この文書データは、ユーザによって描画された文字や絵などの画像データ等であってもよい。
【0188】
一方、ステップS351で“NO”であれば、CPUコア42は、ステップS353で、入力用画面に設けられた送信ボタンが選択されたか否かを判断する。ステップS353で“YES”であれば、CPUコア42はステップS359でチャットデータを全ゲーム装置10にまたは選択されたゲーム装置10に送信する。
【0189】
また、ステップS353で“NO”であれば、CPUコア42はステップS355でチャットの終了を指示するためのボタンが選択されたか否かを判断する。ステップS355で“NO”の場合、または、ステップS357もしくはS359を終了すると処理はステップS361へ進む。
【0190】
ステップS361では、CPUコア42は、チャットデータを他のゲーム装置10から受信したか否かを判断する。ステップS361で“YES”であれば、CPUコア42は、受信したチャットデータをRAM48に記憶し、ステップS363で、チャットデータを上画面に表示する。ステップS363を終了し、またはステップS361で“NO”の場合には処理はステップS349へ戻る。
【0191】
一方、ステップS355で“YES”であれば、つまり、チャットの終了が指示された場合には、CPUコア42はステップS365で終了処理を実行する。具体的には、CPUコア42は、上画面から送受信したチャットのメッセージを消去するとともに、下画面からチャット入力用画面を消去する。ステップS365を終了すると、処理はステップS331に戻る。
【0192】
このように、図26のステップS121でチャット処理を開始することによって、ユーザは、メニュー処理中にチャットタブ168を選択した場合、チャットのメッセージを作成して、他のゲーム装置10のユーザに自分のメッセージを伝えることができる。メニューの選択権が特定装置のユーザのみに与えられているような場合には、当該特定のユーザに自分の意見を伝えることができる。
【0193】
続いて、図26のステップS123で、CPUコア42は、マーク設定プログラムの実行を開始する。このマーク設定プログラムに従って、以後のマークメニューの処理が実行される。
【0194】
CPUコア42は、ステップS125で、メンバ情報テーブル記憶領域108のデータに基づいて、全メンバのユーザ名とマークを上画面に表示する(図13および図14参照)。メモリカード28未装着のゲーム装置10およびマーク未決定のゲーム装置10についてはユーザ名のみが表示される。また、子機では、図14に示すようにユーザ名を含む歓迎メッセージが表示される。
【0195】
ステップS127では、CPUコア42は、マーク設定用メニューを下画面に表示する。たとえば、自分のマークが決定済みのゲーム装置10では、当該マークに対応するジャンルが選択され、かつ、当該ジャンルに対応するマークメニュー164が表示される。また、マーク未決定のゲーム装置10では、ジャンルメニュー162のみが表示される。
【0196】
続いて、ステップS129で、CPUコア42は、全メンバのうちマーク設定を処理するメンバ(識別情報)を選択する。ただし、後述するように、チャットが起動されたゲーム装置10は対象から除外され、ここでは選ばれない。したがって、チャットが起動されたゲーム装置10における操作入力データはマーク設定処理に使用されない。
【0197】
そして、ステップS131で、CPUコア42は、選択メンバ(識別情報)に対応付けられた操作入力データを入力セットデータ記憶領域112から検出する。続くステップS
133からS137で、選択メンバの操作を特定して、操作に対応する処理を実行する。
【0198】
CPUコア42は、ステップS133で、ジャンルメニュー162のジャンルアイコンが選択されたか否かを、操作入力データとジャンルアイコンの表示位置データに基づいて判断する。ステップS133で“YES”であれば、CPUコア42は、ステップS139で、選択足されたジャンルアイコンを特定し、当該ジャンルアイコンに対応するジャンルを選択する。つまり、当該ジャンルの識別情報を、選択メンバの選択ジャンルとして進行状況データ記憶領域114に記憶する。続いて、ステップS141で、CPUコア42は、選択メンバが自分であるか否か、つまり、ステップS129で選択した識別情報が、記憶領域100の自分の識別情報であるか否かを判断する。ステップS141で“YES”であれば、CPUコア42は、ステップS143で、選択ジャンルに対応するマークメニュー164を下画面に表示する。ステップS141で“NO”であれば、つまり、選択メンバが他のゲーム装置10である場合には、処理はそのままステップS151へ進む。
【0199】
一方、ステップS133で“NO”であれば、CPUコア42は、ステップS135でマークメニュー164におけるマークアイコンが選択されたか否かを操作入力データとマークアイコンの表示位置データに基づいて判断する。ステップS135で“YES”であれば、CPUコア42は、ステップS145で選択されたマークアイコンを特定して、当該マークを選択する。つまり、当該マークの識別情報(マークID)を、選択メンバの選択マークとして進行状況データ記憶領域114に記憶する。ステップS145を終了すると処理はステップS151に進む。
【0200】
また、ステップS135で“NO”であれば、CPUコア42は、ステップS137で決定アイコン166が選択されたか否かを判断する。ステップS137で“YES”であれば、CPUコア42は、ステップS147で、進行状況データから当該選択メンバのマークIDを読み出して、メンバ情報テーブル記憶領域108に記憶する。続くステップS149で、CPUコア42は、当該メンバのマーク決定のメッセージと当該マークを上画面に表示する(図13または図15参照)。ステップS149を終了すると、または、ステップS137で“NO”の場合、処理はステップS151へ進む。
【0201】
そして、ステップS151で、CPUコア42は全メンバについて処理が終了したか否かを判断する。つまり、処理対象の全てのメンバについて、ステップS131からステップS149までの処理を実行したか否かを判断する。ステップS151で“NO”であれば、ステップS129へ戻って残りメンバについての処理が繰り返される。一方、ステップS151で“YES”であれば、処理は図27のステップS153へ進む。
【0202】
図27のステップS153では、CPUコア42は、全メンバのマークが決定されたか否か、つまり、全ゲーム装置10で決定アイコン166が選択されたか否かを判断する。ステップS153で“NO”であれば、CPUコア42は、ステップS155で、自分のマークは決定されたか否か、つまり、自分のゲーム装置10では決定アイコン166が選択されたか否かを判断する。
【0203】
ステップS155で“YES”であれば、CPUコア42は、ステップS157で図15に示したような待機画面を下画面に表示する。ステップS157を終了すると、またはステップS155で“NO”であれば、CPUコア42は、ステップS159で、チャットの選択されたメンバが存在するか否かを判断する。たとえば、入力セットデータに基づいて、チャットタブ168の表示位置を示す操作入力データがあるか否かを判定する。ステップS159で“YES”であれば、CPUコア42は、ステップS161で、当該メンバを特定して、マーク設定処理対象から除外する。これによって、図26のステップS129で当該メンバが選択されなくなる。ステップS161を終了し、または、ステップ
S159で“NO”である場合、CPUコア42は、ステップS163で、チャット終了の選択されたメンバがあるか否かを判断する。たとえば、入力セットデータに基づいて、マーク設定処理対象から除外されているメンバの操作入力データのうち、チャット終了アイコンの表示位置を示す操作入力データがあるか否かを判定する。ステップS163で“YES”であれば、CPUコア42は、ステップS165で、当該メンバを特定して、マーク設定処理対象に復帰させる。これによって、図26のステップS129で当該メンバが選択されるようになる。ステップS165を終了し、または、ステップS163で“NO”である場合には、処理は図26のステップS129に戻る。このようにして、ステップS153で“YES”と判断されるまでステップS129からのマーク設定処理が繰返される。
【0204】
一方、ステップS153で“YES”であれば、つまり、全ゲーム装置10で決定アイコン166が選択された場合には、処理は図28のステップS167に進む。つまり、マーク設定メニューに関する処理を終了し、新たなゲーム選択メニューに関する処理に進む。
【0205】
図28のステップS167で、CPUコア42は、ゲーム選択プログラムの実行を開始する。このゲーム選択プログラムに従って、以後のゲーム選択メニューの処理が実行される。
【0206】
CPUコア42は、まず、図16および図17に示したように、ゲーム選択画面をLCD12および14に表示する。具体的には、CPUコア42は、ステップS169で、メンバ情報テーブルに基づいて、全メンバのユーザ名とマークを上画面に表示する。また、ステップS171で、CPUコア42は初期ジャンルを選択状態の画像で下画面のジャンルメニュー174に表示する。図16および図17の例では、「お手軽トランプ」のジャンルアイコンが選択状態で表示されている。
【0207】
また、ステップS173で、CPUコア42は、親フラグがオンであるか否かを判断する。ステップS173で“YES”である場合、つまり、このゲーム装置10が親機である場合には、ステップS175からS179で親機用の画面(図16参照)を表示する。具体的には、CPUコア42は、ステップS175でジャンルメニュー170の他のジャンルを通常状態の画像で下画面に表示する。ステップS177では、CPUコア42は初期ジャンルに対応するゲームメニュー172を下画面に表示する。ゲームメニュー172における選択可能なゲームアイコンは通常状態の画像で表示される。ステップS179では、CPUコア42は選択を促すメッセージを上画面に表示する。
【0208】
一方、ステップS173で“NO”である場合、つまり、このゲーム装置10が子機である場合には、ステップS181からS185で子機用の画面(図17参照)を表示する。具体的には、ステップS181で、CPUコア42はジャンルメニュー170の他のジャンルアイコンを通常状態と異なる選択不可能を示す画像で下画面に表示する。図17の例では選択不可能状態の各アイコンはグレーアウトで表示される。ステップS183で、CPUコア42は初期ジャンルに対応するゲームメニュー172を下画面に表示する。ゲームメニュー172における各ゲームアイコンは選択不可能状態の画像で表示される。また、ステップS185では、CPUコア42は親機のユーザ名を含み親機がゲーム選択中である旨を示すメッセージを上画面に表示する。ステップS179またはS185を終了すると処理は図29のステップS187に進む。
【0209】
このようにして、各ゲーム装置10ではゲーム選択画面が表示され、共有化された入力セットデータのうち特定装置である親機の入力情報に基づいてゲームアイコンが選択されたと判断されるまで、図29のステップS187から図30のステップS231までのゲ
ーム選択メニュー処理を、たとえば1フレームごとに繰り返し実行する。
【0210】
具体的には、ステップS187で、CPUコア42は、入力セットデータ記憶領域112から親機の操作入力データを読み出す。ただし、後述するように、親機がチャット中でありゲーム選択の処理対象から除外されている場合には、ここでは、親機の操作入力データを検出しない。したがって、チャット中の親機の入力情報によってゲーム選択は行われない。
【0211】
続いて、ステップS189で、CPUコア42は、読み出した親機の操作入力データに基づいて、ジャンルメニュー170のジャンルアイコンが選択されたか否かを判断する。ステップS189で“YES”であれば、CPUコア42は、ステップS191で、ジャンルアイコンの表示位置データに基づいて、選択されたジャンルアイコンを特定し、当該ジャンルの識別情報を選択ジャンルとしてRAM48の所定領域に記憶する。そして、ステップS193で、CPUコア42は、選択ジャンルを選択状態を示す画像で下画面に表示する。なお、自分のゲーム装置10がチャット中であり処理対象から除外されている場合には、チャット画面を表示するので、ゲーム選択画面を表示しない。
【0212】
ステップS195では、CPUコア42は、親フラグがオンであるか否かを判断する。ステップS195で“YES”であれば、つまり、このゲーム装置10が親機である場合には、ステップS197で、CPUコア42はジャンルメニュー170の他のジャンルアイコンを通常状態の画像で下画面に表示する。また、ステップS199で、CPUコア42は、選択ジャンルに対応するゲームメニュー172を通常状態で下画面に表示する。これによって、選択ジャンルが変更されたときには、選択可能状態の複数のゲームアイコンを含む新たなゲームメニュー172が表示される。
【0213】
一方、ステップS195で“NO”であれば、つまり、このゲーム装置10が子機である場合には、CPUコア42は、ステップS201で、ジャンルメニュー170の他のジャンルアイコンを選択不可能状態を示す画像で下画面に表示する。また、ステップS203で、CPUコア42は、選択ジャンルに対応するゲームメニュー172を選択不可能状態を示す画像で表示する。これによって、親機で選択ジャンルが変更されたときには、子機では、選択不可能状態の複数のゲームアイコンを含む新たなゲームメニュー172が表示される。このように、子機でも親機におけるメニュー選択の過程が表示されるので、子機のユーザは選択権を持つ親機ユーザのメニュー選択の過程を知ることができる。
【0214】
ステップS199またはS203を終了すると、または、ステップS189で“NO”の場合には、CPUコア42は、ステップS205で、読み出した親機の操作入力データに基づいて戻るアイコン174が選択されたか否かを判断する。ステップS205で“YES”であれば、処理は図26のステップS123に戻って、前メニューであるマーク設定メニューからやり直される。
【0215】
また、ステップS205で“NO”であれば、CPUコア42は、ステップS207で、読み出した親機の操作入力データに基づいて、ゲームメニュー172のゲームアイコンが選択されたか否かを判断する。ステップS207で“YES”であれば、CPUコア42は、ステップS209で、ゲームアイコンの表示位置データに基づいて、選択されたゲームアイコンを特定し、当該ゲームを選択ゲームとしてRAM48の所定領域に記憶する。ステップS209を終了すると、親機のユーザによってゲームが選択されたので、当該選択されたゲームの確認に関するメニュー処理を実行すべく、処理は図31のステップS233へ進む。
【0216】
一方、ステップS207で“NO”であれば、つまり、親機のユーザによってまだゲー
ムが選択されていない場合には、処理は図30のステップS211へ進む。
【0217】
図30のステップS211では、CPUコア42は、入力セットデータ記憶領域112から子機の操作入力データを読み出す。ただし、チャット中であり処理対象から除外されている子機の操作入力データは読み出されない。
【0218】
続いて、ステップS213で、CPUコア42は読み出した子機の操作入力データに基づいて、ゲームメニュー172のゲームアイコンが選択されたか否かを、ゲームアイコンの表示位置データに基づいて判断する。ステップS213で“NO”であれば、処理はそのままステップS219へ進む。一方、ステップS213で“YES”であれば、CPUコア42は、ステップS215で、当該データは他のゲーム装置10の入力であるか否かを判断する。ステップS215で“YES”であれば、つまり、他のゲーム装置10でゲームアイコンが選択されている場合には、CPUコア42は、ステップS217で、選択されたゲームアイコンを特定し、当該ゲームアイコンの表示状態をたとえば震わせることによって変化させる(図19参照)。このように、子機のユーザが選択したゲームアイコンが親機および他の子機で震えるようにしたので、子機のユーザは選択権のある親機のユーザに自己主張することができるし、他の子機のユーザにも選択したいゲームを知らせることができる。ステップS217を終了すると、または、ステップS215で“NO”の場合には、処理はステップS219へ進む。なお、ステップS215で“NO”の場合、つまり、選択肢がこの子機でも選択された場合には、そのままS223へ進んで、選択不可能であることを表示するようにしてもよい。
【0219】
なお、上述のように、このゲーム装置10がチャット中の場合にはチャット画面が表示されるので、ゲーム選択画面は表示されない。
【0220】
ステップS219では、CPUコア42は、親フラグがオフであるか否かを判断する。ステップS219で“NO”であれば、つまり、このゲーム装置10が親機の場合には処理はそのままステップS225へ進む。一方、ステップS219で“YES”であれば、つまり、このゲーム装置10が子機である場合には、CPUコア42は、ステップS221で、読み出した子機の操作入力データに基づいて、自分の入力位置が所定領域であるか否かを判断する。所定領域は、たとえばチャットタブ168等の表示領域の上側の、ジャンルメニュー170、ゲームメニュー172および戻るアイコン174を含むメニュー表示領域である。たとえば、自分の入力位置がこの所定領域を示す位置データに含まれるかが判定される。ステップS221で“YES”であれば、つまり、選択権を有しないこのゲーム装置10でゲームメニュー選択操作が行われた場合には、CPUコア42は、ステップS223で、親機のユーザ名を含む親機が操作していることを示すメッセージを、入力位置に対応する位置に表示する(図18参照)。なお、ステップS221では、選択肢のいずれかが選択されたか否かを判定するようにしてもよい。ステップS223を終了すると、または、ステップS221で“NO”である場合には、処理はステップS225へ進む。
【0221】
ステップS225では、CPUコア42は、チャットの選択されたメンバが存在するか否かを判断する。たとえば、入力セットデータに基づいて、チャットタブ168の選択された操作入力データがあるか否かが判定される。ステップS225で“YES”であれば、CPUコア42は、ステップS227で、当該操作入力データに対応するメンバを特定し、当該メンバの識別情報をゲーム選択処理対象から除外する。これによって、チャット中のゲーム装置10の操作入力データはゲーム選択処理のために使用されない。
【0222】
ステップS227を終了し、または、ステップS225で“NO”である場合には、CPUコア42は、ステップS229でチャットの終了したメンバが存在するか否かを判断
する。つまり、入力セットデータのうち処理対象から除外されているゲーム装置10の操作入力データに基づいて、チャットの終了を指示するためのアイコンが選択されているか否かを判断する。ステップS229で“YES”であれば、CPUコア42は、ステップS231で、当該メンバを特定し、当該メンバの識別情報をゲーム選択処理対象に復帰せる。これによって、当該ゲーム装置10の操作入力データがゲーム選択処理のために使用される。ステップS231を終了し、または、ステップS229で“NO”である場合には、処理は図29のステップS187へ戻る。このようにして、図29のステップS207でゲームアイコンが選択されたと判定されるまで、ゲーム選択のための処理が繰返される。
【0223】
親機のユーザによってゲームアイコンが選択されて、図29のステップS209で当該ゲームが選択されると、ゲーム確認のためのメニュー処理に移行し、図20および図21に示すようなゲーム確認画面が表示される。具体的には、CPUコア42は、図31のステップS233で、選択されたゲームの説明を上画面に表示する。また、ステップS235で、CPUコア42は、親フラグがオンであるか否かを判断する。
【0224】
このゲーム装置10が親機である場合には、続くステップS237およびS239で親機用の画面を表示する。つまり、CPUコア42は、ステップS237で、確認用メニューを通常状態で下画面に表示する。これによって、図20に示すように、ゲームスタートアイコン176、設定変更アイコン178および戻るアイコン180が、通常状態の画像で表示される。また、ステップS239で、CPUコア42はメニュー選択を促すメッセージを上画面に表示する。
【0225】
一方、このゲーム装置10が子機である場合には、続くステップS241およびS243で子機用の画面を表示する。つまり、CPUコア42は、ステップS241で確認用メニューを選択不可能状態で下画面に表示する。これによって、図21に示すように、ゲームスタートアイコン176、設定変更アイコン178および戻るアイコン180が、選択不可能を示すたとえばグレーアウト画像で表示される。また、ステップS243で、CPUコア42は、ゲーム選択がなされたことを示すメッセージを上画面に表示する。ステップS239またはS243を終了すると、処理はステップS245へ進む。
【0226】
このようにして、各ゲーム装置10ではゲーム確認画面が表示され、共有化された入力セットデータのうち特定装置である親機の入力情報に基づいて、ゲームスタートアイコン176が選択されたと判断されるまで、図31のステップS245から図32のステップS275までのゲーム確認メニュー処理を、たとえば1フレームごとに繰り返し実行する。
【0227】
具体的には、ステップS245で、CPUコア42は、入力セットデータ記憶領域112から親機の操作入力データを読み出す。なお、親機がチャット中であり処理対象から除外されている場合には、親機の操作入力データは読み出されない。
【0228】
続いて、ステップS247で、CPUコア42は読み出した親機の操作入力データに基づいて戻るアイコン180が選択されたか否かを判断する。ステップS247で“YES”であれば、処理は図28のステップS167へ戻り、ゲーム選択メニューからやり直される。
【0229】
また、ステップS247で“NO”であれば、CPUコア42は、ステップS249で、読み出した親機の操作入力データに基づいて、設定変更アイコン178が選択されたか否かを判断する。ステップS249で“YES”であれば、CPUコア42は、ステップS251で設定変更処理を実行する。この設定変更では、設定変更のための新たな画面が
表示され、たとえばゲームのルールの設定やメンバの変更などが実行される。ステップS251を終了すると処理はステップS233へ戻る。
【0230】
一方、ステップS249で“NO”であれば、CPUコア42は、ステップS253で、読み出した親機の操作入力データに基づいて、ゲームスタートアイコン176が選択されたか否かを判断する。ステップS253で“NO”であれば、つまり、ゲームスタートが親機ユーザによって選択されていない場合には、処理は図32のステップS255へ進む。一方、ステップS253で“YES”であれば、つまり、ゲームスタートが親機のユーザによって指示された場合には、処理は図33のステップS277へ進む。
【0231】
ゲームスタートではない場合には、CPUコア42は、図32のステップS255で、入力セットデータから子機の操作入力データを読み出す。ただし、チャット中であり処理対象から除外されている子機の操作入力データは読み出されない。
【0232】
続くステップS257で、CPUコア42は、読み出した子機の操作入力データに基づいて、いずれかのアイコンが選択されたか否かを判断する。ステップS257で“NO”であれば、処理はそのままステップS263へ進む。
【0233】
一方、ステップS257で“YES”であれば、CPUコア42は、ステップS259で当該操作入力データが他のゲーム装置10の入力であるか否かを判断する。ステップS259で“YES”であれば、つまり、他のゲーム装置10でアイコン176、178または180が選択された場合には、CPUコア42は、ステップS261で、各アイコンの表示位置データに基づいて、選択されたアイコンを特定し、当該アイコンの表示状態をたとえば震わせることによって変化させる。これによって、子機ユーザはどのアイコンの選択を望んでいるかを親機および他の子機ユーザに知らせることができる。なお、ステップS259で“NO”であれば、つまり、このゲーム装置10でいずれかのアイコンが選択されている場合には処理はそのままステップS263へ進む。
【0234】
ステップS263では、CPUコア42は、親フラグがオフであるか否かを判断する。ステップS263で“YES”であれば、つまり、このゲーム装置10が子機である場合には、CPUコア42は、ステップS265で、読み出した子機の操作入力データのうちこのゲーム装置10のデータに基づいて、自分の入力位置が所定領域であるか否かを判断する。所定領域は、たとえば、チャットタブ168を含む下端領域の上側の、アイコン176、178および180を含むメニュー表示領域のことである。ステップS265で“YES”であれば、つまり、このゲーム装置10でメニュー選択操作が行われたと判断される場合には、CPUコア42は、ステップS267で、ゲーム選択の場合と同様にして、親機のユーザ名を含み親機が操作している旨を示すメッセージを、入力位置に対応する位置に表示する。なお、ステップS265で“NO”である場合、または、ステップS263で“NO”である場合には、処理はそのままステップS269へ進む。
【0235】
ステップS269では、CPUコア42は、図30のステップS225と同様にして、入力セットデータに基づいてチャットタブ186の選択されたメンバが存在するか否かを判断する。ステップS269で“YES”であれば、CPUコア42は、ステップS271で、図30のステップS227と同様にして、当該メンバを特定し、当該メンバの識別情報をゲーム確認の処理対象から除外する。なお、ステップS269で“NO”であれば、処理はそのままステップS273へ進む。
【0236】
ステップS273では、CPUコア42は、図30のステップS229と同様にして、入力セットデータに基づいて、処理対象から除外されているメンバのうちチャットの終了が選択されたメンバが存在するか否かを判断する。ステップS273で“YES”であれ
ば、CPUコア42は、ステップS275で、図30のステップS231と同様にして、当該メンバを特定して、当該メンバの識別情報を処理対象に復帰させる。ステップS275を終了し、または、ステップS274で“NO”の場合には、処理は図31のステップS245へ戻る。このようにして、ステップS253でゲームスタートアイコン176が親機のユーザによって選択されたと判定されるまで、ゲーム確認のためのメニュー処理が繰り返し実行される。
【0237】
そして、親機のユーザがゲームスタートを指示したときには、選択されたゲームを開始するための処理が実行される。すなわち、図33のステップS277で、CPUコア42は、親フラグがオンであるか否かを判断する。ステップS277で“YES”であれば、つまり、このゲーム装置10が親機である場合には、CPUコア42は、ステップS279で、メモリカード28の無い子機が存在するか否かを、メンバ情報テーブルに基づいて判断する。ステップS279で“YES”であれば、CPUコア42は、ステップS281で、選択されたゲームのプログラムおよびデータを、当該メモリカード28を未装着の子機に送信する。なお、ステップS279で“NO”であれば処理はそのままステップS283へ進む。
【0238】
ステップS283では、CPUコア42は、ROM28aに記憶された選択ゲームのゲームプログラムの実行を開始する。
【0239】
一方、ステップS277で“NO”であれば、つまり、このゲーム装置10が子機である場合には、CPUコア42は、ステップS285でこのゲーム装置10はメモリカード28を未装着であるか否かを判断する。ステップS285で“NO”であれば、つまり、メモリカード28を装着した子機である場合には、CPUコア42は、上述のステップS283で、選択ゲームのプログラムの実行を開始する。
【0240】
また、ステップS285で“YES”であれば、つまり、このゲーム装置10がメモリカード28を装着していない場合には、CPUコア42は、ステップS287で、親機からの選択ゲームのプログラムおよびデータを受信して、記憶領域116および118に記憶する。続いて、ステップS289で、CPUコア42は、受信したゲームプログラムの実行を開始する。
【0241】
ステップS283またはS289で実行を開始すると、続くステップS291で、CPUコア42は当該選択ゲームプログラムに従ってゲーム処理を実行する。これによって、複数のゲーム装置10間で選択された通信対戦ゲームが実行され、当該実行結果としてのゲーム画像が各ゲーム装置10に表示される。通信ゲーム処理は、各ゲーム装置10の入力に基づいて実行される。ゲーム処理は、たとえば、共有化された入力情報に基づいて各ゲーム装置10で同じように実行されてよい。ただし、システム100におけるゲーム処理の方法は適宜変更され得る。たとえば、1つの装置(特定装置または非特定装置)10、あるいはシステム100に含まれる別の装置(サーバなど)でゲーム処理を実行して、当該実行結果を示すデータ(最終または中間的なデータ)を生成し、当該データを各装置10に直接または間接に送信するようにしてもよく、各装置10は受信した当該実行結果のデータに基づいて、表示すべきゲーム画像を表示してよい。または、ゲーム処理は複数の装置で分担して実行されてもよい。
【0242】
この実施例によれば、複数のゲーム装置10で同一のメニューを表示して、特定のゲーム装置10の入力情報に基づいて選択された選択肢に対応付けられた処理の実行の結果を各ゲーム装置10で表示するようにしたので、特定のユーザの入力操作によって統一的にメニューを選択することができるとともに、システム100に含まれる全てのゲーム装置10で同じようにメニューを進行させることができる。したがって、複数の人がメニュー
選択をしようとしている場面で、特定装置のユーザのみに許可されたメニューを全ユーザに同じように表示することができるとともに、当該メニュー選択の過程を全ユーザに同じように開示することができる。選択肢の選択に応じた処理が階層的または並列的な別のメニューを表示する処理である場合には、特定ユーザの選択操作に応じて新たなメニューを全ユーザに対して同じように表示することができる。したがって、複数のメニューを順番に選択して何かを決めようとする場合に、全ユーザに同じようにメニューを表示しかつ選択の過程を明らかにすることができる。また、選択肢の選択に応じた処理がたとえばゲーム処理などメニュー表示と異なる処理である場合には、特定ユーザの選択操作に応じて当該処理の実行によって得られる画像を全ユーザに対して同じように表示することができる。
【0243】
また、メニュー選択不可能な非特定装置で、特定装置で表示されるメニューの表示状態と異なる表示状態のメニューを表示するようにしたので、非特定装置のユーザに対してメニュー選択不可能であることを容易に自覚させることができる。また、メニュー選択不可能な非特定装置でメニューに対する入力操作が検出されたときには、たとえば当該非特定装置のユーザは選択不可能であって特定装置のユーザが選択可能であることを示すメッセージを当該非特定装置で表示するようにしたので、非特定装置のユーザに対してさらに容易にメニュー選択不可能であることを自覚させることができる。
【0244】
また、メニュー選択不可能な非特定装置で選択肢に対する操作が行われたことに応じて、特定装置で当該選択肢の表示状態を変化させるようにしたので、非特定装置のユーザは、メニュー選択可能な特定ユーザに対してメニュー選択に関して自己主張することができる。また、チャットを行えるようにしたので、非特定装置のユーザはメニュー選択に関して特定装置のユーザに対して直接的に自己の意見またはメッセージを伝えることができる。
【0245】
また、少なくともメニュー選択可能な特定装置の入力情報を共有化するとともに、各装置で当該特定装置の入力情報に基づいて特定された選択肢に対応付けられた処理を実行するようにしたので、簡単な処理で全装置で同じようにメニューを進行させることができる。
【0246】
また、少なくともメニュー選択可能な特定装置の入力情報を共有化するとともに、全装置で同一のプログラムに従ってメニュー処理を実行するようにしたので、簡単な処理で全装置で同じように特定装置でのメニュー選択に応じて処理を進行させることができる。
【0247】
また、特定装置に限らず全装置の入力情報を共有化し、かつ、全装置で同じメニューを表示するようにしているので、全ての装置で各装置におけるメニューに対する操作の状況を簡単に把握することができる。したがって、特定装置において、非特定装置で選択された選択肢の表示状態を変化させるといった処理を簡単に実行することができる。
【0248】
なお、上述の実施例では、メニュー選択権のある特定装置は通信接続に関する親機であった。しかし、他の実施例では、メニュー選択可能な特定装置は適宜変更されてよく、たとえば、通信対戦ゲーム処理の結果に基づく順位付けを行って、1位または最下位など所定順位の装置を特定装置に設定するようにしてもよい。
【0249】
また、上述の各実施例では、全装置の入力情報を共有化していたが、他の実施例では、特定装置の入力情報のみを共有化するようにしてもよい。そして、全装置の共通設定(上述の実施例ではゲームの選択およびゲームの確認)に関しては、各装置が当該共有化された特定装置の入力情報に基づいて処理を実行してよい。一方、各装置の個別の設定(上述の実施例ではマークの設定)に関しては、各装置が各入力情報に基づいて処理を実行して
当該実行結果の情報を他の装置に送信し、各装置が当該受信した他の装置の実行結果を含む実行結果を表示するようにしてよい。
【0250】
また、上述の各実施例では、入力情報の共有化はメニュー処理の全体にわたって継続的に実行されていた。しかし、他の実施例では、入力情報共有化処理は、必要な場合にのみ、たとえば共通事項の設定ないし選択を実行する場合にのみ実行されてよい。
【0251】
また、上述の各実施例では、全装置で特定装置の入力情報を共有化して、各装置で、共有化された特定装置の入力情報に基づいて、メニューを進行するようにしていた。しかし、メニューを進行するための処理の方法は、各装置10で実行する方法に限られず、適宜変更されうる。他の実施例では、たとえば、1つの装置10(特定装置10または非特定装置10)のみが、あるいは、システム100に含まれる別の装置(たとえばサーバ)が、当該特定装置の入力情報に基づいて選択された選択肢に対応する処理を実行することによってメニューを進行させるようにしてよい。そして、当該装置は、当該処理の実行結果を示すデータ(最終または中間的なデータ)を、各装置10に直接または間接に送信し、各装置10は、受信した実行結果に基づいて、表示すべき画像を表示することによって、当該装置10におけるメニューを進行させるようにしてよい。また、選択肢を選択する処理と、選択された処理に応じた処理とは別々の装置で実行されてもよい。
【0252】
また、上述の各実施例では、各装置10で共通の選択肢を含むメニューを、各装置10に記憶させたデータを用いて、通信によりタイミングを合わせて同時期に表示していたが、共通のメニューの表示方法は適宜変更されうる。他の実施例では、たとえば、1つのゲーム装置10(特定装置10または非特定装置10)、あるいはシステム100に備えさせた別の装置で、共通のメニューを表示するためのデータ(最終または中間的なデータ)を生成または記憶しておいて、各装置10に直接または間接に(他の装置10や別の装置を経由して)送信するようにし、各装置は受信したデータに基づいて、表示すべき画像を表示するようにしてよい。
【0253】
また、上述の各実施例では、特定装置(親機)と非特定装置(子機)とで同一のプログラムに従ってメニュー処理を実行するようにしていた。しかし、他の実施例では、特定装置は当該特定装置専用のプログラムに従ってメニュー処理を実行し、非特定装置は当該非特定装置専用のプログラムに従ってメニュー処理を実行するようにしてよい。
【0254】
また、上述の各実施例では、LCD14の画面上に設けられたタッチパネル22で座標を入力するようにしていた。しかし、他の実施例では、マウスのような他のポインティングデバイスが適用されてもよい。この場合には、画面にマウスポインタを表示することによって入力位置を明示する。また、マウスのボタンが押されているときを入力有り状態とみなし、かつ、マウスのボタンが放されているときを入力無し状態とみなすことによって、ポインティングデバイスでの入力の有無を判別することができる。
【0255】
また、上述の各実施例では、表示器12,14が一体的に形成されたゲーム装置10を用いてシステム100を構成するようにしているが、他の実施例では、表示器12,14が別に設けられたゲーム装置10によってシステム100を構成してよいのは勿論である。
【0256】
また、上述の各実施例では、各ゲーム装置10を無線で接続するようにしているが、これに限定される必要はない。他の実施例では、各ゲーム装置10を、有線接続するようにしてもよい。また、各ゲーム装置10を、LANまたはインターネット網等を介して接続するようにしてもよい。
【図面の簡単な説明】
【0257】
【図1】この発明の一実施例の通信メニューシステムの一例を示す外観図である。
【図2】図1実施例で使用されるゲーム装置の一例を示す外観図である。
【図3】図2のゲーム装置の電気的な構成を示すブロック図である。
【図4】メモリカードのROMのメモリマップの一例を示す図解図である。
【図5】RAMのメモリマップの一例を示す図解図である。
【図6】メモリカードが装着された場合の開始画面の一例を示す図解図である。
【図7】メモリカードが選択された場合に表示されるトップメニューの一例を示す図解図である。
【図8】通信対戦が選択された場合に表示される通信選択画面の一例を示す図解図である。
【図9】親機になることが選択された場合に表示されるメンバ受付画面の一例を示す図解図である。
【図10】子機になることが選択された場合に表示される親機リスト画面の一例を示す図解図である。
【図11】データ受信中に子機に表示される準備中画面の一例を示す図解図である。
【図12】メモリカード無し子機でダウンロードプレイが選択された場合に表示される親機リスト画面の一例を示す図解図である。
【図13】親機に表示されるマーク設定画面の一例を示す図解図である。
【図14】子機に表示されるマーク設定画面の一例を示す図解図である。
【図15】自分のマーク決定後に全機でマークが決定されるまでに表示される待機画面の一例を示す図解図である。
【図16】親機に表示されるゲーム選択画面の一例を示す図解図である。
【図17】子機に表示されるゲーム選択画面の一例を示す図解図である。
【図18】子機でゲームメニュー領域における操作が行われたとき当該子機に表示される画面の一例を示す図解図である。
【図19】子機でゲームアイコンに対する操作が行われたとき親機に表示される画面の一例を示す図解図である。
【図20】親機に表示されるゲーム確認画面の一例を示す図解図である。
【図21】子機に表示されるゲーム確認画面の一例を示す図解図である。
【図22】ゲーム装置の動作の一例の一部を示すフロー図である。
【図23】図22の続きの一部を示すフロー図である。
【図24】図22の続きの一部を示すフロー図である。
【図25】図22の続きの一部を示すフロー図である。
【図26】図23、図24、図25の続きの一部を示すフロー図である。
【図27】図26の続きの一部を示すフロー図である。
【図28】図27の続きの一部を示すフロー図である。
【図29】図28の続きの一部を示すフロー図である。
【図30】図29の続きの一部を示すフロー図である。
【図31】図29の続きの一部を示すフロー図である。
【図32】図31の続きの一部を示すフロー図である。
【図33】図31の続きの一部を示すフロー図である。
【図34】図26で開始される入力情報共有化処理の動作の一例を示すフロー図である。
【図35】図26で開始されるチャット処理の動作の一例を示すフロー図である。
【符号の説明】
【0258】
10 …情報処理装置
12,14…LCD
20 …操作スイッチ
22 …タッチパネル
28 …メモリカード
28a …ROM
42 …CPUコア
48 …RAM
50,52 …GPU
54 …I/F回路
60 …LCDコントローラ
100 …通信メニューシステム

【特許請求の範囲】
【請求項1】
複数の選択肢からいずれかの選択を行う複数の情報処理装置を用いた選択肢の選択システムであって、
前記複数の情報処理装置は、特定装置と非特定装置を含み、
前記複数の情報処理装置のそれぞれは、表示器、通信手段、ユーザの入力を受け付ける入力手段、および前記複数の情報処理装置で共通の複数の選択肢を示す画像を前記表示器の画面に表示する選択肢表示制御手段を含んでいて、
前記特定装置の前記入力手段の入力があったときに、当該入力に基づいて前記複数の選択肢のうちの1つを選択し、当該選択された選択肢に応じた処理を実行する選択肢処理手段を備え、
各前記選択肢表示制御手段は、前記選択肢処理手段の実行に伴う画像を各前記表示器の画面に表示する、システム。
【請求項2】
前記非特定装置の前記選択肢表示制御手段は、前記複数の選択肢を前記特定装置における表示状態と異なる表示状態で表示する、請求項1記載のシステム。
【請求項3】
前記非特定装置の前記入力手段の入力があったときに、選択入力が不可能であることを当該入力があった非特定装置において通知する通知手段をさらに備える、請求項1または2記載のシステム。
【請求項4】
前記非特定装置の前記入力手段の入力情報に基づいて前記複数の選択肢のいずれかを選択する非特定装置選択処理手段、および
前記非特定装置選択処理手段によって選択肢のいずれかが選択されたときに、選択入力が不可能であることを当該選択肢を選択した非特定装置において通知する通知手段をさらに備える、請求項1または2記載のシステム。
【請求項5】
前記非特定装置の前記入力手段の入力情報に基づいて前記複数の選択肢のいずれかを選択する非特定装置選択処理手段、および
前記非特定装置選択処理手段によって選択肢のいずれかが選択されたときに、前記特定装置の前記選択肢表示制御手段に、当該選択肢の表示態様を変化させる表示態様変化手段をさらに備える、請求項1または2記載のシステム。
【請求項6】
前記非特定装置は、さらに、前記選択肢表示制御手段により前記複数の選択肢が表示されているときに、ユーザ入力に応じて文書データを作成し、当該文書データを前記特定装置に送信する文書データ送信手段を備え、
前記特定装置は、さらに、前記文書データ送信手段から送信される文書データを受信して提示する文書データ提示手段を備える、請求項1ないし5のいずれかに記載のシステム。
【請求項7】
前記複数の情報処理装置のそれぞれは、少なくとも前記特定装置の前記入力情報を通信して前記複数の情報処理装置間で共有化する共有化手段および前記選択肢処理手段を備え、前記共有化手段により共有化された前記特定装置の前記入力情報に基づいて、当該選択肢処理手段による処理を実行し、
前記各選択肢表示制御手段は、自機の前記選択肢処理手段による処理結果に基づいて、前記選択肢処理手段の実行に伴う画像を各前記表示器の画面に表示する、請求項1ないし6のいずれかに記載のシステム。
【請求項8】
前記複数の情報処理装置のそれぞれは、当該情報処理装置自体における個別設定のためのメニューに関する処理を実行する個別実行手段をさらに備えていて、
前記選択肢処理手段は、前記複数の情報処理装置の共通設定のためのメニューについてのみ、当該処理を実行する、請求項1ないし7のいずれかに記載のシステム。
【請求項9】
前記選択肢処理手段による処理の結果データを記憶する選択結果記憶手段、および
前記選択肢処理手段による処理の後に、前記複数の情報処理装置の各前記入力手段の入力情報に応じた所定の処理を、前記選択結果記憶手段に記憶された結果データに基づいて実行し、実行結果を各前記表示器の画面に表示する実行手段をさらに備える、請求項1ないし8のいずれかに記載のシステム。
【請求項10】
前記実行手段は、前記複数の情報処理装置の各前記入力手段の入力情報に基づいて通信ゲームを実行するものであり、当該通信ゲームを前記選択結果記憶手段に記憶された結果データに基づいて実行し、実行結果であるゲーム画像を各前記表示器の画面に表示する、請求項9記載のシステム。
【請求項11】
複数の選択肢からいずれかの選択を行う複数の情報処理装置を用いた選択肢の選択システムの情報処理装置のプログラムであって、
前記複数の情報処理装置は、特定装置と非特定装置を含み、
前記複数の情報処理装置のそれぞれは、表示器、通信手段、およびユーザの入力を受け付ける入力手段を含んでいて、
前記情報処理装置のプロセサを、
前記複数の情報処理装置で共通の複数の選択肢を示す画像を前記表示器の画面に表示する選択肢表示制御手段、および
前記特定装置の前記入力手段の入力があったときに、当該入力に基づいて前記複数の選択肢のうちの1つを選択し、当該選択された選択肢に応じた処理を実行する選択肢処理手段として機能させ、
前記選択肢表示制御手段は、前記選択肢処理手段の実行に伴う画像を前記表示器の画面に表示する、プログラム。
【請求項12】
特定装置と非特定装置を含む複数の情報処理装置を用いて複数の選択肢からいずれかの選択を行う選択肢の選択システムの情報処理装置であって、
表示器、
通信手段、
ユーザの入力を受け付ける入力手段、
前記複数の情報処理装置で共通の複数の選択肢を示す画像を前記表示器の画面に表示する選択肢表示制御手段、および
前記特定装置の前記入力手段の入力があったときに、当該入力に基づいて前記複数の選択肢のうちの1つを選択し、当該選択された選択肢に応じた処理を実行する選択肢処理手段を備え、
前記選択肢表示制御手段は、前記選択肢処理手段の実行に伴う画像を前記表示器の画面に表示する、情報処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate


【公開番号】特開2010−113728(P2010−113728A)
【公開日】平成22年5月20日(2010.5.20)
【国際特許分類】
【出願番号】特願2009−289208(P2009−289208)
【出願日】平成21年12月21日(2009.12.21)
【分割の表示】特願2005−319190(P2005−319190)の分割
【原出願日】平成17年11月2日(2005.11.2)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】