IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 任天堂株式会社の特許一覧

特許7315640情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-18
(45)【発行日】2023-07-26
(54)【発明の名称】情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法
(51)【国際特許分類】
   A63F 13/497 20140101AFI20230719BHJP
   A63F 13/85 20140101ALI20230719BHJP
   A63F 13/79 20140101ALI20230719BHJP
   A63F 13/795 20140101ALI20230719BHJP
【FI】
A63F13/497
A63F13/85
A63F13/79 500
A63F13/795
【請求項の数】 14
(21)【出願番号】P 2021181849
(22)【出願日】2021-11-08
(65)【公開番号】P2023069745
(43)【公開日】2023-05-18
【審査請求日】2022-01-27
(73)【特許権者】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】100090181
【弁理士】
【氏名又は名称】山田 義人
(74)【代理人】
【識別番号】100130269
【弁理士】
【氏名又は名称】石原 盛規
(74)【代理人】
【識別番号】100168217
【弁理士】
【氏名又は名称】大村 和史
(72)【発明者】
【氏名】久保 堅太
(72)【発明者】
【氏名】河本 浩一
【審査官】岸 智史
(56)【参考文献】
【文献】特開2017-153783(JP,A)
【文献】特開2009-089737(JP,A)
【文献】特開2013-099435(JP,A)
【文献】特表2014-531945(JP,A)
【文献】国際公開第2018/042468(WO,A1)
【文献】[任天堂スイッチ]やわらかあたま塾 12月3日リリース!体験版の感想は?,こまったー [online],2021年09月17日,https://apicodes.hatenablog.com/entry/yawaraka-atama,[2023年2月1日検索]
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24、13/00-13/98
(57)【特許請求の範囲】
【請求項1】
少なくとも1人の第1ユーザによりプレイされた、異なる操作方法でのゲームプレイが可能なゲームのプレイ内容を示すプレイデータを、当該第1ユーザを示すデータおよび当該操作方法を示すデータと関連付けて記憶するデータ記憶手段と
2ユーザのゲームプレイに関する状態を示すプレイ状態を判定するプレイ状態判定手段と、
前記プレイ状態と前記第1ユーザの操作方法を示すデータとに基づいて、当該第1ユーザの操作方法を示すデータに関連付けられた前記プレイデータを取得するデータ取得手段と
得された前記プレイデータが示す前記プレイ内容を再現することにより、前記第2ユーザが前記第1ユーザと非同期で前記ゲームを用いた対戦を行う対戦処理を実行する対戦実行手段を備える、情報処理システム。
【請求項2】
前記プレイ状態判定手段は、前記第2ユーザの操作方法に基づいて前記プレイ状態を判定する、請求項1記載の情報処理システム。
【請求項3】
前記データ取得手段は、前記第2ユーザの操作方法と同じ操作方法を示すデータに関連付けられた前記プレイデータを優先して選出する、請求項2記載の情報処理システム。
【請求項4】
前記データ取得手段は、前記第2ユーザの操作方法と異なる操作方法を示すデータに関連付けられた前記プレイデータを選出しないで、当該第2ユーザの操作方法と同じ操作方法を示すデータに関連付けられた前記プレイデータを選出する、請求項2記載の情報処理システム。
【請求項5】
前記プレイ状態判定手段は、前記第2ユーザが今回の前記対戦を行うまでの前記第2ユーザの操作方法に基づいて前記プレイ状態を判定する、請求項1から4までのいずれかに記載の情報処理システム。
【請求項6】
前記プレイ状態判定手段は、前記第2ユーザが前記今回の対戦を行う直前のゲームにおける前記第2ユーザの操作方法に基づいて前記プレイ状態を判定する、請求項5記載の情報処理システム。
【請求項7】
前記データ取得手段は、前記第2ユーザの操作方法がボタン操作である場合、タッチ操作を示すデータが関連付けられた前記プレイデータが選出されにくくする、請求項1から6までのいずれかに記載の情報処理システム。
【請求項8】
前記データ取得手段は、複数の前記プレイデータを取得し、
取得された前記複数のプレイデータを前記第2ユーザが選択可能なように提示するデータ提示手段をさらに備える、請求項1から7までのいずれかに記載の情報処理システム。
【請求項9】
前記第1ユーザが前記第2ユーザとどのような関係であるかを判定する関係判定手段をさらに備え、
前記データ取得手段は、
前記関係が第1関係である場合、前記第1ユーザの操作方法と前記第2ユーザの前記プレイ状態とに基づいて選出した前記プレイデータを取得し、
前記関係が第2関係である場合、前記第2ユーザの操作方法とは異なる操作方法を示すデータが関連付けられた前記プレイデータが選出されることを許容して当該プレイデータを取得する、請求項1から8までのいずれかに記載の情報処理システム。
【請求項10】
前記データ記憶手段は、前記ゲームの開始前に前記第1ユーザが指定した前記操作方法のみの入力を受け付けた前記プレイデータを前記第1ユーザおよび前記ゲームと関連付けて記憶し、
前記対戦実行手段は、
前記第1ユーザが指定した前記操作方法が第1操作方法である場合、前記第2ユーザが前記対戦で用いる前記操作方法として当該第1操作方法のみを許可し、
前記第ユーザが指定した前記操作方法が第2操作方法である場合、前記第2ユーザが前記対戦で用いる前記操作方法として当該第2操作方法以外も許可する、請求項1から8までのいずれかに記載の情報処理システム。
【請求項11】
サーバと、1または複数のゲーム装置を備え、
前記サーバは、
前記データ記憶手段と、
前記ゲーム装置から送信される、当該ゲーム装置のユーザの操作方法を関連付けた前記プレイデータを受信する受信手段を備え、
前記データ記憶手段は、前記受信手段によって受信された前記プレイデータを、前記第1ユーザを示すデータおよび前記操作方法を示すデータと関連付けた前記プレイデータとして記憶し、
前記1または複数のゲーム装置の各々は、
前記対戦実行手段と、
前記プレイ状態判定手段と、
前記データ取得手段を備え、
当該ゲーム装置のユーザの操作方法を示すデータを関連付けた前記プレイデータを前記サーバに送信する送信手段をさらに備える、請求項1から10までのいずれかに記載の情報処理システム。
【請求項12】
情報処理装置のコンピュータを、
少なくとも1人の第1ユーザによりプレイされた、異なる操作方法でのゲームプレイが可能なゲームのプレイ内容を示すプレイデータを、当該第1ユーザを示すデータおよび当該操作方法を示すデータと関連付けて記憶する記憶手段から当該プレイデータを取得するデータ取得手段と、
第2ユーザのゲームプレイに関する状態を示すプレイ状態を判定するプレイ状態判定手段と、
取得した前記プレイデータが示す前記プレイ内容を再現することにより、前記第2ユーザが前記第1ユーザと非同期で前記ゲームを用いた対戦を行う対戦処理を実行する対戦実行手段として機能させ、
前記データ取得手段は、前記プレイ状態と前記第1ユーザの操作方法を示すデータとに基づいて、当該第1ユーザの操作方法を示すデータに関連付けられた前記プレイデータを取得する、情報処理装置。
【請求項13】
情報処理装置のコンピュータで実行される情報処理プログラムであって、
前記コンピュータのプロセッサに、
少なくとも1人の第1ユーザによりプレイされた、異なる操作方法でのゲームプレイが可能なゲームのプレイ内容を示すプレイデータを、当該第1ユーザを示すデータおよび当該操作方法を示すデータと関連付けて記憶する記憶手段から当該プレイデータを取得するデータ取得ステップと、
第2ユーザのゲームプレイに関する状態を示すプレイ状態を判定するプレイ状態判定ステップと、
取得した前記プレイデータが示す前記プレイ内容を再現することにより、前記第2ユーザが前記第1ユーザと非同期で前記ゲームを用いた対戦を行う対戦処理を実行する対戦実行ステップを実行させ、
前記データ取得ステップは、前記プレイ状態と前記第1ユーザの操作方法を示すデータとに基づいて、当該第1ユーザの操作方法を示すデータに関連付けられた前記プレイデータを取得する、情報処理プログラム。
【請求項14】
情報処理装置の情報処理方法であって、
(a)少なくとも1人の第1ユーザによりプレイされた、異なる操作方法でのゲームプレイが可能なゲームのプレイ内容を示すプレイデータを、当該第1ユーザを示すデータおよび当該操作方法を示すデータと関連付けて記憶する記憶手段から当該プレイデータを取得するステップと、
(b)第2ユーザのゲームプレイに関する状態を示すプレイ状態を判定するステップと、
(c)取得した前記プレイデータが示す前記プレイ内容を再現することにより、前記第2ユーザが前記第1ユーザと非同期で前記ゲームを用いた対戦を行う対戦処理を実行するステップを含み、
前記ステップ(a)は、前記プレイ状態と前記第1ユーザの操作方法を示すデータとに基づいて、当該第1ユーザの操作方法を示すデータに関連付けられた前記プレイデータを取得する、情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法に関し、特にたとえば、過去の他のプレイヤと仮想的な対戦を行う、情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法に関する。
【背景技術】
【0002】
背景技術の一例が非特許文献1に開示される。この非特許文献1によれば、過去のプレイデータに従ってプレイするプレイヤであるゴーストを選択する画面には、それぞれのゴーストのプレイヤが使用するアイコン画像に対応して、国旗の画像、プレイヤの名称およびプレイしたコースを走破した走破タイムが表示され、さらに、車のハンドルを模したアタッチメントにコントローラを装着してプレイした場合には、そのことを示すハンドルの画像も表示される。
【先行技術文献】
【非特許文献】
【0003】
【文献】https://www.youtube.com/watch?v=JbuJZP0_8iQ
【発明の概要】
【発明が解決しようとする課題】
【0004】
非特許文献1では、ゴーストの特徴が識別可能に表示されるだけであり、アタッチメントを使用したことなどのプレイヤのプレイに関する状態に合わせて適切なゴーストは選出されていなかった。
【0005】
それゆえに、この発明の主たる目的は、新規な、情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法を提供することである。
【0006】
また、この発明の他の目的は、プレイヤのプレイ状態に合わせて適切なゴーストを選出することができる、情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法を提供することである。
【課題を解決するための手段】
【0007】
第1の発明は、少なくとも1人の第1ユーザによりプレイされた、異なる操作方法でのゲームプレイが可能なゲームのプレイ内容を示すプレイデータを、当該第1ユーザを示すデータおよび当該操作方法を示すデータと関連付けて記憶するデータ記憶手段と、第2ユーザのゲームプレイに関する状態を示すプレイ状態を判定するプレイ状態判定手段と、プレイ状態と第1ユーザの操作方法を示すデータとに基づいて、当該第1ユーザの操作方法を示すデータに関連付けられたプレイデータを取得するデータ取得手段と、取得されたプレイデータが示すプレイ内容を再現することにより、第2ユーザが第1ユーザと非同期でゲームを用いた対戦を行う対戦処理を実行する対戦実行手段を備える、情報処理システムである。
【0008】
第1の発明によれば、第2ユーザのプレイ状態に応じて適切なプレイデータを選出することができる。
【0009】
第2の発明は、第1の発明に従属し、プレイ状態判定手段は、第2ユーザの操作方法に基づいてプレイ状態を判定する。
【0010】
第3の発明は、データ取得手段は、第2ユーザの操作方法と同じ操作方法を示すデータに関連付けられたプレイデータを優先して選出する。
【0011】
第3の発明によれば、同じ操作方法が用いられたプレイデータを優先して選出するので、第2ユーザは、操作方法の違いによって不利な状況になるのを出来る限り回避することができる。
【0012】
第4の発明は、第2の発明に従属し、データ取得手段は、第2ユーザの操作方法と異なる操作方法を示すデータに関連付けられたプレイデータを選出しないで、当該第2ユーザの操作方法と同じ操作方法を示すデータに関連付けられたプレイデータを選出する。
【0013】
第4の発明によれば、異なる操作方法を示すデータに関連付けられたプレイヤデータを選出しないで、同じ操作方法を示すデータに関連付けられたプレイデータを選出するので、第2ユーザは、入力デバイスの違いによって不利な状況になるのを事前に回避することができる。
【0014】
第5の発明は、第1から第4の発明までのいずれかに従属し、プレイ状態判定手段は、第2ユーザが今回の対戦を行うまで第2ユーザの操作方法に基づいてプレイ状態を判定する。
【0015】
第6の発明は、第5の発明に従属し、プレイ状態判定手段は、第2ユーザが今回の対戦を行う直前のゲームにおける第2ユーザの操作方法に基づいてプレイ状態を判定する。
【0016】
第7の発明は、第1から第6の発明までのいずれかに従属し、データ取得手段は、第2ユーザの操作方法がボタン操作である場合、タッチ操作を示すデータが関連付けられたプレイデータが選出されにくくする。
【0017】
第7の発明によれば、タッチ操作が有利なゲームをプレイする場合に、ボタン操作を行う第2ユーザが不利になりにくくすることができる。
【0018】
第8の発明は、第1から第7の発明までのいずれかに従属し、データ取得手段は、複数のプレイデータを取得し、取得された複数のプレイデータを第2ユーザが選択可能なように提示するデータ提示手段をさらに備える。
【0019】
第8の発明によれば、第2ユーザが複数のプレイデータから1のプレイデータを選択できる。
【0020】
第9の発明は、第1から第8の発明までのいずれかに従属し、第1ユーザが第2ユーザとどのような関係であるかを判定する関係判定手段をさらに備え、データ取得手段は、関係が第1関係である場合、第1ユーザの操作方法と第2ユーザのプレイ状態とに基づいて選出したプレイデータを取得し、
関係が第2関係である場合、第2ユーザの操作方法とは異なる操作方法を示すデータが関連付けられたプレイデータが選出されることを許容して当該プレイデータを取得する。
【0021】
第10の発明は、第1から第8の発明までのいずれかに従属し、データ記憶手段は、ゲームの開始前に第1ユーザが指定した操作方法のみの入力を受け付けたプレイデータを第1ユーザおよびゲームと関連付けて記憶し、対戦実行手段は、第1ユーザが指定した操作方法第1操作方法である場合、第2ユーザが対戦で用いる当該操作方法として当該第1操作方法のみを許可し、第ユーザが指定した操作方法が第2操作方法である場合、第2ユーザが対戦で用いる当該操作方法として当該第2操作方法以外も許可する。
【0022】
第11の発明は、第1から第10の発明までのいずれかに従属し、サーバと、1または複数のゲーム装置を備え、サーバは、データ記憶手段と、ゲーム装置から送信される、当該ゲーム装置のユーザの操作方法を関連付けたプレイデータを受信する受信手段を備え、データ記憶手段は、受信手段によって受信されたプレイデータを、第1ユーザを示すデータおよび操作方法を示すデータと関連付けたプレイデータとして記憶し、1または複数のゲーム装置の各々は、対戦実行手段と、プレイ状態判定手段と、データ取得手段を備え、当該ゲーム装置のユーザの操作方法を示すデータを関連付けたプレイデータをサーバに送信する送信手段をさらに備える。
【0023】
第12の発明は、情報処理装置のコンピュータを、少なくとも1人の第1ユーザによりプレイされた、異なる操作方法でのゲームプレイが可能なゲームのプレイ内容を示すプレイデータを、当該第1ユーザを示すデータおよび当該操作方法を示すデータと関連付けて記憶する記憶手段から当該プレイデータを取得するデータ取得手段と、第2ユーザのゲームプレイに関する状態を示すプレイ状態を判定するプレイ状態判定手段と、取得したプレイデータが示すプレイ内容を再現することにより、第2ユーザが第1ユーザと非同期でゲームを用いた対戦を行う対戦処理を実行する対戦実行手段として機能させ、データ取得手段は、プレイ状態と第1ユーザの操作方法を示すデータとに基づいて、当該第1ユーザの操作方法を示すデータに関連付けられたプレイデータを取得する、情報処理装置である。
【0024】
第13の発明は、情報処理装置のコンピュータで実行される情報処理プログラムであって、コンピュータのプロセッサに、少なくとも1人の第1ユーザによりプレイされた、異なる操作方法でのゲームプレイが可能なゲームのプレイ内容を示すプレイデータを、当該第1ユーザを示すデータおよび当該操作方法を示すデータと関連付けて記憶する記憶手段から当該プレイデータを取得するデータ取得ステップと、第2ユーザのゲームプレイに関する状態を示すプレイ状態を判定するプレイ状態判定ステップと、取得したプレイデータが示すプレイ内容を再現することにより、第2ユーザが第1ユーザと非同期でゲームを用いた対戦を行う対戦処理を実行する対戦実行ステップを実行させ、データ取得ステップは、プレイ状態と第1ユーザの操作方法を示すデータとに基づいて、当該第1ユーザの操作方法を示すデータに関連付けられたプレイデータを取得する、情報処理プログラムである。
【0025】
第14の発明は、情報処理装置の情報処理方法であって、(a)少なくとも1人の第1ユーザによりプレイされた、異なる操作方法でのゲームプレイが可能なゲームのプレイ内容を示すプレイデータを、当該第1ユーザを示すデータおよび当該操作方法を示すデータと関連付けて記憶する記憶手段から当該プレイデータを取得するステップと、(b)第2ユーザのゲームプレイに関する状態を示すプレイ状態を判定するステップと、(c)取得したプレイデータが示すプレイ内容を再現することにより、第2ユーザが第1ユーザと非同期でゲームを用いた対戦を行う対戦処理を実行するステップを含み、ステップ(a)は、プレイ状態と第1ユーザの操作方法を示すデータとに基づいて、当該第1ユーザの操作方法を示すデータに関連付けられたプレイデータを取得する、情報処理方法である。
【0026】
第12-第14の発明においても、プレイヤのプレイ状態に応じて適切な対戦相手を選択することができる。
【発明の効果】
【0027】
この発明によれば、プレイヤのプレイ状態に応じて適切な対戦相手を選択することができる。
【0028】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0029】
図1図1はこの実施例の本体装置に左コントローラおよび右コントローラを装着した状態の限定しない一例を示す図である。
図2図2は本体装置から左コントローラおよび右コントローラをそれぞれ外した状態の限定しない一例を示す図である。
図3図3図1および図2に示した本体装置の限定しない一例を示す六面図である。
図4図4図1および図2に示した左コントローラの限定しない一例を示す六面図である。
図5図5図1および図2に示した右コントローラの限定しない一例を示す六面図である。
図6図6図1および図2に示した本体装置の内部構成の限定しない一例を示すブロック図である。
図7図7図1および図2に示した本体装置と左コントローラおよび右コントローラとの内部構成の限定しない一例を示すブロック図である。
図8図8はこの実施例の情報処理システムの限定しない一例を示す図である。
図9図9は1人用メニュー画面の限定しない一例を示す図である。
図10図10は人間のプレイヤが単独でプレイするミニゲームのゲーム画面の限定しない一例を示す図である。
図11図11はゴースト対戦画面の限定しない一例を示す図である。
図12図12はゴースト対戦選択画面の限定しない一例を示す図である。
図13図13は世界のゴーストを選択する第1選択画面の限定しない一例を示す図である。
図14図14はともだちのゴーストを選択する第2選択画面の限定しない一例を示す図である。
図15図15図6に示す本体装置のDRAMのメモリマップの限定しない一例を示す図である。
図16図16図15に示すプレイヤデータの具体的な内容の限定しない一例を示す図である。
図17図17図6に示す本体装置のプロセッサの全体処理の限定しない一例の第1の一部を示すフロー図である。
図18図18図6に示す本体装置のプロセッサの全体処理の限定しない一例の第2の一部であって、図17に後続するフロー図である。
図19図19図6に示す本体装置のプロセッサの全体処理の限定しない一例の第3の一部であって、図18に後続するフロー図である。
図20図20図6に示す本体装置のプロセッサの全体処理の限定しない一例の第4の一部であって、図18に後続するフロー図である。
図21図21図6に示す本体装置のプロセッサの全体処理の限定しない一例の第5の一部であって、図20に後続するフロー図である。
図22図22図6に示す本体装置のプロセッサの全体処理の限定しない一例の第6の一部であって、図19図21に後続するフロー図である。
図23図23図6に示す本体装置のプロセッサの全体処理の限定しない一例の第6の一部であって、図17に後続するフロー図である。
図24図24図6に示す本体装置のプロセッサの個別ミニゲームプレイの処理の限定しない一例を示すフロー図である。
図25図25図6に示す本体装置のプロセッサの総合テストの処理の限定しない一例を示すフロー図である。
図26図26図6に示す本体装置のプロセッサのマルチプレイモードの処理の限定しない一例を示すフロー図である。
図27図27図8に示すサーバのCPUのゴーストデータの登録および送信処理の限定しない一例の第1の一部を示すフロー図である。
図28図28図8に示すサーバのCPUのゴーストデータの登録および送信処理の限定しない一例の第2の一部であって、図27に後続するフロー図である。
図29図29図8に示すサーバのCPUのゴーストデータの登録および送信処理の限定しない一例の第3の一部であって、図28に後続するフロー図である。
【発明を実施するための形態】
【0030】
以下、この実施例の限定しない一例に係るゲームシステムについて説明する。この実施例におけるゲームシステム1の一例は、本体装置(ゲーム装置;この実施例ではゲーム本体装置として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる(図2参照)。以下では、この実施例のゲームシステム1のハードウェア構成について説明し、その後に、この実施例のゲームシステム1の制御について説明する。
【0031】
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
【0032】
図2は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。図1および図2に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
【0033】
図3は、本体装置2の一例を示す六面図である。図3に示すように、本体装置2は、略板状のハウジング11を備える。この実施例において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。
【0034】
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
【0035】
図3に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。この実施例においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
【0036】
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。この実施例においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
【0037】
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、図6に示すスピーカ88)を備えている。図3に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカ88の出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
【0038】
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。
【0039】
図3に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種のゲーム装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。また、本体装置2は、電源ボタン28を備える。
【0040】
本体装置2は、下側端子27を備える。下側端子27は、本体装置2がクレードルと通信を行うための端子である。この実施例において、下側端子27は、USBコネクタ(より具体的には、メス側コネクタ)である。上記一体型装置または本体装置2単体をクレードルに載置した場合、ゲームシステム1は、本体装置2が生成して出力する画像を据置型モニタに表示することができる。また、この実施例においては、クレードルは、載置された上記一体型装置または本体装置2単体を充電する機能を有する。また、クレードルは、ハブ装置(具体的には、USBハブ)の機能を有する。
【0041】
図4は、左コントローラ3の一例を示す六面図である。図4に示すように、左コントローラ3は、ハウジング31を備える。この実施例においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、図1および図4に示すy軸方向)に長い形状である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0042】
左コントローラ3は、アナログスティック32を備える。図4に示すように、アナログスティック32は、ハウジング31の主面に設けられる。アナログスティック32は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック32を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。なお、左コントローラ3は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、この実施例においては、アナログスティック32を押下する入力が可能である。
【0043】
左コントローラ3は、各種操作ボタンを備える。左コントローラ3は、ハウジング31の主面上に4つの操作ボタン33~36(具体的には、右方向ボタン33、下方向ボタン34、上方向ボタン35、および左方向ボタン36)を備える。さらに、左コントローラ3は、録画ボタン37および-(マイナス)ボタン47を備える。左コントローラ3は、ハウジング31の側面の左上にLボタン38およびZLボタン39を備える。また、左コントローラ3は、ハウジング31の側面のうち、本体装置2に装着される際に装着される側の面に、SLボタン43およびSRボタン44を備える。これらの操作ボタンは、本体装置2で実行される各種プログラム(例えば、OSプログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
【0044】
また、左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。
【0045】
図5は、右コントローラ4の一例を示す六面図である。図5に示すように、右コントローラ4は、ハウジング51を備える。この実施例においては、ハウジング51は、縦長の形状、すなわち、上下方向に長い形状である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0046】
右コントローラ4は、左コントローラ3と同様、方向入力部としてアナログスティック52を備える。この実施例においては、アナログスティック52は、左コントローラ3のアナログスティック32と同じ構成である。また、右コントローラ4は、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、右コントローラ4は、左コントローラ3と同様、ハウジング51の主面上に4つの操作ボタン53~56(具体的には、Aボタン53、Bボタン54、Xボタン55、およびYボタン56)を備える。さらに、右コントローラ4は、+(プラス)ボタン57およびホームボタン58を備える。また、右コントローラ4は、ハウジング51の側面の右上にRボタン60およびZRボタン61を備える。また、右コントローラ4は、左コントローラ3と同様、SLボタン65およびSRボタン66を備える。
【0047】
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
【0048】
図6は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、図3に示す構成の他、図6に示す各構成要素81~91、97、および98を備える。これらの構成要素81~91、97、および98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
【0049】
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
【0050】
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【0051】
本体装置2は、スロットインターフェース(以下、「I/F」と略記する)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
【0052】
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
【0053】
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。この実施例においては、ネットワーク通信部82は、第1の通信態様としてWi-Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルエリアネットワーク内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
【0054】
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、この実施例においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
【0055】
プロセッサ81は、上述の左側端子17、右側端子21、および下側端子27に接続される。プロセッサ81は、左コントローラ3と有線通信を行う場合、左側端子17を介して左コントローラ3へデータを送信するとともに、左側端子17を介して左コントローラ3から操作データを受信(または、取得)する。また、プロセッサ81は、右コントローラ4と有線通信を行う場合、右側端子21を介して右コントローラ4へデータを送信するとともに、右側端子21を介して右コントローラ4から操作データを受信(または、取得)する。また、プロセッサ81は、クレードルと通信を行う場合、下側端子27を介してクレードルへデータを送信する。このように、この実施例においては、本体装置2は、左コントローラ3および右コントローラ4との間で、それぞれ有線通信と無線通信との両方を行うことができる。また、左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置または本体装置2単体がクレードルに装着された場合、本体装置2は、クレードルを介してデータ(例えば、表示画像データや音声データ)を据置型モニタ等に出力することができる。
【0056】
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、複数のユーザは、左コントローラ3および右コントローラ4のセットをそれぞれ用いて、本体装置2に対する入力を同時に行うことができる。一例として、第1ユーザが左コントローラ3および右コントローラ4の第1セットを用いて本体装置2に対して入力を行うと同時に、第2ユーザが左コントローラ3および右コントローラ4の第2セットを用いて本体装置2に対して入力を行うことが可能となる。
【0057】
本体装置2は、タッチパネル13の制御を行う回路であるタッチパネルコントローラ86を備える。タッチパネルコントローラ86は、タッチパネル13とプロセッサ81との間に接続される。タッチパネルコントローラ86は、タッチパネル13からの信号に基づいて、例えばタッチ入力が行われた位置を示すデータを生成して、プロセッサ81へ出力する。
【0058】
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
【0059】
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、プロセッサ81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。
【0060】
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
【0061】
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
【0062】
図7は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、図6で示しているため図7では省略している。
【0063】
左コントローラ3は、本体装置2との間で通信を行う通信制御部101を備える。図7に示すように、通信制御部101は、端子42を含む各構成要素に接続される。この実施例においては、通信制御部101は、端子42を介した有線通信と、端子42を介さない無線通信との両方で本体装置2と通信を行うことが可能である。通信制御部101は、左コントローラ3が本体装置2に対して行う通信方法を制御する。すなわち、左コントローラ3が本体装置2に装着されている場合、通信制御部101は、端子42を介して本体装置2と通信を行う。また、左コントローラ3が本体装置2から外されている場合、通信制御部101は、本体装置2(具体的には、コントローラ通信部83)との間で無線通信を行う。コントローラ通信部83と通信制御部101との間の無線通信は、例えばBluetooth(登録商標)の規格に従って行われる。
【0064】
また、左コントローラ3は、例えばフラッシュメモリ等のメモリ102を備える。通信制御部101は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ102に記憶されるファームウェアを実行することによって各種の処理を実行する。
【0065】
左コントローラ3は、各ボタン103(具体的には、ボタン33~39、43、44、および47)を備える。また、左コントローラ3は、アナログスティック(図7では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
【0066】
通信制御部101は、各入力部(具体的には、各ボタン103、アナログスティック32、各センサ104および105)から、入力に関する情報(具体的には、操作に関する情報、またはセンサによる検出結果)を取得する。通信制御部101は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
【0067】
上記操作データが本体装置2へ送信されることによって、本体装置2は、左コントローラ3に対して行われた入力を得ることができる。すなわち、本体装置2は、各ボタン103およびアナログスティック32に対する操作を、操作データに基づいて判断することができる。
【0068】
左コントローラ3は、電力供給部108を備える。この実施例において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
【0069】
図7に示すように、右コントローラ4は、本体装置2との間で通信を行う通信制御部111を備える。また、右コントローラ4は、通信制御部111に接続されるメモリ112を備える。通信制御部111は、端子64を含む各構成要素に接続される。通信制御部111およびメモリ112は、左コントローラ3の通信制御部101およびメモリ102と同様の機能を有する。したがって、通信制御部111は、端子64を介した有線通信と、端子64を介さない無線通信(具体的には、Bluetooth(登録商標)の規格に従った通信)との両方で本体装置2と通信を行うことが可能であり、右コントローラ4が本体装置2に対して行う通信方法を制御する。
【0070】
右コントローラ4は、左コントローラ3の各入力部と同様の各入力部を備える。具体的には、各ボタン113、アナログスティック52を備える。これらの各入力部については、左コントローラ3の各入力部と同様の機能を有し、同様に動作する。
【0071】
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
【0072】
図8はこの実施例の情報処理システム200の限定しない一例を示す。図8に示すように、情報処理システム200は、サーバ202を含み、サーバ202は、LANまたは/およびインターネットのようなネットワーク204を介して、複数の本体装置2と通信可能に接続される。ただし、本体装置2には、左コントローラ3および右コントローラ4が装着されている場合もある。
【0073】
サーバ202は、汎用のサーバであり、CPU202a、RAM202b、HDD202cおよび通信部202dなどの回路コンポーネントを備えている。
【0074】
CPU202aは、サーバ202の全体的な制御を司るプロセッサである。RAM202bは、サーバ202の主記憶装置であり、CPU202aのワーク領域およびバッファ領域として使用される。
【0075】
HDD202cは、サーバ202の補助記憶装置であり、オペレーティングシステムなどのミドルウェアおよびこの実施例の制御プログラムなどのプログラムを記憶するとともに、サーバ202で管理されるデータ(後述する、ゴーストデータ)を記憶する。制御プログラムは、ゴーストデータをHDD202cに記憶したり、ゴーストデータを要求元の本体装置2に配信したりするためのプログラムである。
【0076】
ただし、ゴーストデータは、サーバ202が直接またはネットワーク204を介して通信可能に接続されるデータベースに記憶されるようにしてもよい。
【0077】
通信部202dは、ネットワーク204を介して、本体装置2などの外部のコンピュータとの間で有線または無線で通信を行う。
【0078】
後で詳細に説明するが、この実施例の情報処理システム200では、サーバ202は、ネットワーク204を介して通信可能に接続された各本体装置2から送信されたゴーストデータをHDD202cのようなデータベースに記憶し、また、各本体装置2から要求されたゴーストデータを要求元の本体装置2に配信する。
【0079】
次に、上述した情報処理システム200において実行される処理の概要について説明する。この実施例では、情報処理システム200は、ゲームアプリケーション内において仮想のミニゲームを実行する。仮想のミニゲームは、プレイヤの思考の柔軟性の向上を目指すゲームである。この実施例では、複数(たとえば、5つ)の分野に分類された複数のミニゲームが用意されている。一例として、ミニゲームは、思考の柔軟性を高めるための問題を、制限時間内で正確に回答するゲームである。また、この実施例では、5つの分野は、「記憶」、「直感」、「分析」、「知覚」、「数字」である。「記憶」の分野では、記憶力に関する複数のミニゲームが用意されている。「直感」の分野では、直感力に関する複数のミニゲームが用意されている。「分析」の分野では、分析力に関する複数のミニゲームが用意されている。「知覚」の分野では、知覚に関する複数のミニゲームが用意されている。「数字」の分野では、数の大小、順番または計算に関する複数のミニゲームが用意されている。
【0080】
ただし、情報処理システム200において実行されるゲームの内容は任意であり、上記のミニゲーム以外の他のジャンルのゲーム(たとえば、パズルゲーム、レースゲームまたはアクションゲーム等)であってもよい。
【0081】
この実施例のゲームアプリケーションにおいては、シングルプレイモードおよびマルチプレイモードの2種類のゲームモードでゲームを実行することが可能である。本体装置2のユーザ(または、プレイヤともいう)は、シングルプレイモードおよびマルチプレイモードのいずれかでミニゲームをプレイすることができる。
【0082】
シングルプレイモードは、人間のプレイヤが1人でゲームを行うモードである。シングルプレイモードにおいては、3種類のサブのゲームモード、この実施例では、「個別ミニゲームプレイ」、「ゴースト対戦」および「総合テスト」でミニゲームを実行することが可能である。
【0083】
「個別ミニゲームプレイ」では、人間のプレイヤが単独でミニゲームをプレイし、プレイしたミニゲームにおける当該プレイヤの経験値またはレベルを上昇させる。
【0084】
「ゴースト対戦」では、人間のプレイヤがミニゲームをプレイしてゴーストと対戦する。この明細書において、ゴーストとは、過去にこの実施例のゲームアプリケーションにおけるミニゲームをプレイしたプレイヤまたはそのプレイヤキャラクタを意味し、より具体的には、後述するプレイデータに従ってミニゲームをプレイする(つまり、当該ミニゲームについての過去のプレイ内容を再現する)プレイヤまたはそのプレイヤキャラクタを意味する。ここでは、「プレイヤ」は、人間のプレイヤであって、本体装置2を使用するプレイヤおよび他の本体装置2を使用するプレイヤ(すなわち、他のプレイヤ)を意味する。
【0085】
つまり、「ゴースト対戦」は、プレイヤまたは他のプレイヤの過去のプレイデータが用いられることによって、プレイヤが、過去にミニゲームをプレイしたプレイヤまたは他のプレイヤ(すなわち、ゴースト)と非同期または非同時的に当該ミニゲームをプレイして対戦するものである。
【0086】
「総合テスト」では、人間のプレイヤが単独で5つの分野のそれぞれについて1つのミニゲームをプレイし、分野毎に当該プレイヤのスコアを測定する。
【0087】
また、マルチプレイモードは、人間のプレイヤが他の人間のプレイヤと同期してまたは同時的にゲームを行うモードである。マルチモードにおいては、複数人のプレイヤがそれぞれミニゲームをプレイして対戦する、または、ミニゲームを協力してプレイする。
【0088】
この実施例のゲームアプリケーションのメインメニュー画面は、シングルプレイモードまたはマルチプレイモードを選択するためのゲーム画像であり、ゲームアプリケーションのプログラムが実行されると、最初に、据置型モニタ(たとえば、テレビモニタ)またはディスプレイ12に表示される。
【0089】
メインメニュー画面において、シングルプレイモードが選択されると、プレイヤを選択する画面においてプレイヤが選択された後に、1人用メニュー画面300が据置型モニタまたはディスプレイ12に表示される。ただし、プレイヤは、本体装置2に登録された1または複数のユーザまたは本体装置2に登録されていないユーザから選択される。後述するマルチプレイモードの場合も同様である。図9はこの実施例の1人用メニュー画面300の限定しない一例を示す。1人用メニュー画面300は、3種類のサブのゲームモード、すなわち、「個別ミニゲームプレイ」、「ゴースト対戦」および「総合テスト」のいずれか1つを選択するためのゲーム画像である。
【0090】
上述したように、本体装置2がクレードルに装着された場合には、本体装置2は、クレードルを介してデータ(例えば、表示画像データおよび音声データ)を据置型モニタに出力する。左コントローラ3および右コントローラ4が本体装置2に装着された状態で、本体装置2がクレードルに装着される場合と、左コントローラ3および右コントローラ4が本体装置2から離脱された状態で、本体装置2がクレードルに装着される場合とがある。以下、本体装置2がクレードルに装着された状態をテレビモード(以下、「TVモード」という)と呼ぶことにする。
【0091】
このTVモードでは、左コントローラ3および右コントローラ4が本体装置2に装着された状態でクレードルに装着されている場合には、他のコントローラを使用することが可能である。ただし、他のコントローラは、左コントローラ3または右コントローラ4と同じ機能を有するコントローラ、または、左コントローラ3および右コントローラ4の両方の機能を有するコントローラである。また、左コントローラ3および右コントローラ4が本体装置2から離脱された状態で、本体装置2がクレードルに装着されている場合には、左コントローラ3および右コントローラ4に加えて、他のコントローラを使用することができる。
【0092】
また、ゲームシステム1は、本体装置2をクレードルに装着せずに、左コントローラ3および右コントローラ4を当該本体装置2に装着した状態(以下、「携帯モード」という)で使用される場合がある。さらに、ゲームシステム1は、本体装置2をクレードルに装着せずに、左コントローラ3および右コントローラ4を当該本体装置2から離脱した状態(以下、「テーブルモード」という)で使用される場合もある。携帯モードおよびテーブルモードでは、本体装置2は、表示画像データをディスプレイ12に出力し、音声データを、コーデック回路87を介して音声入出力端子25またはスピーカ88(以下、単に「スピーカ88」という)に出力する。
【0093】
テーブルモードでは、左コントローラ3および右コントローラ4に代えて、または、左コントローラ3および右コントローラ4に加えて、他のコントローラを使用することができる。
【0094】
ゲームシステム1がTVモード、携帯モードまたはテーブルモードのいずれで使用されるか(以下、「使用状態」ということがある)は、少なくとも、ゲームアプリケーションの開始時に判断される。ただし、使用態様を判断する機能は、本体装置2が備えている。
【0095】
また、以下においては、左コントローラ3および右コントローラ4を使用する場合について説明するが、上述したように、ゲームシステム1がTVモードまたはテーブルモードで使用される場合には、他のコントローラが使用される場合もある。
【0096】
図9に示すように、1人用メニュー画面300には、4つのアイコン(または、ボタン画像)302、304、306、308が設けられる。アイコン302は、シングルプレイモードにおける1つ目のサブのゲームモードである「個別ミニゲームプレイ」を選択するために設けられる。アイコン304はシングルプレイモードにおける2つ目のサブのゲームモードである「ゴースト対戦」を選択するために設けられる。アイコン306は、シングルプレイモードにおける3つ目のサブのゲームモードである「総合テスト」を選択するために設けられる。アイコン308は、前の画面すなわちメインメニュー画面に戻るために設けられる。
【0097】
アイコン302がオンされると、「個別ミニゲームプレイ」が選択され、プレイするミニゲームを選択するための画面が据置型モニタまたはディスプレイ12表示される。プレイヤがミニゲームを選択すると、選択したミニゲームが開始される。図10は人間のプレイヤが単独でプレイするミニゲームのゲーム画面350の限定しない一例を示す。図10に示すゲーム画面350では、大きさの異なる複数の風船オブジェクト352が表示され、各風船オブジェクト352には、それぞれ異なる数字が表示されている。また、ゲーム画面350では、画面の中央に、カーソルオブジェクト354が表示される。さらに、ゲーム画面350では、左側上部にタイマ画像356が表示される。タイマ画像356は、長円の枠画像と、この枠画像内に、時計の画像と残り時間の秒数の数字の画像を含む。
【0098】
図10に示すゲーム画面350でプレイされるミニゲームでは、所定数(たとえば、10)の問題が順番に出され、各問題において、プレイヤは、数字の小さい順に風船オブジェクト352を割る。プレイヤがすべての問題について回答すると、ミニゲームが終了する。
【0099】
プレイヤがゲーム画面350に表示されたすべての風船オブジェクト352を割ると、現在の問題に正解となり、次の問題についてのゲーム画面350が表示される。一例として、プレイヤが問題に正解する度に、スコアが加算され、問題を正解するまでに費やした時間が短い程、加算されるスコアが大きくされる。つまり、この実施例のゲームアプリケーションにおけるミニゲームは、正確さのみならず、速さを目指すゲームである。
【0100】
また、現在の問題において、プレイヤが、すべての風船オブジェクト352を割る前に、制限時間を超えてしまったり、順番を間違えて風船オブジェクト352を割ってしまったりした場合には、現在の問題に不正解となり、次の問題についてのゲーム画面350が表示される。
【0101】
この実施例では、各問題について個別に制限時間が設定され、問題毎に制限時間を超えたかどうかが判断される。これは一例であり、各ミニゲームに個別に制限時間が設定され、問題に正解すると、制限時間が少し(2~3秒)増えるようにしてもよい。また、制限時間が各問題ではなく個別のミニゲーム毎に設定され、制限時間内に何問正解できたかを評価するようにしてもよい。
【0102】
風船オブジェクト352を割る場合には、プレイヤは、カーソルオブジェクト354を移動させ、カーソルオブジェクト354で、割りたい風船オブジェクト352を選択(または指示)し、カーソルオブジェクト354で風船オブジェクト352を選択した状態で割ることを決定する。
【0103】
具体的には、携帯モード、テーブルモードまたはTVモードにおいて、プレイヤが左コントローラ3および右コントローラ4の両方を使用する場合には、プレイヤは、アナログスティック32を操作して、カーソルオブジェクト354を、割りたい風船オブジェクト352に重なる位置まで移動させて、当該風船オブジェクト352を選択する。また、プレイヤは、カーソルオブジェクト354が風船オブジェクト352に重なっている状態で、Aボタン53を操作することで、当該風船オブジェクト352を割ることを決定する。
【0104】
ただし、問題が出されたときのカーソルオブジェクト354の初期位置をいずれかの風船オブジェクト352に重なる位置とし、アナログスティック32を操作した方向に位置する風船オブジェクト352に重なる位置にカーソルオブジェクト354が移動されるようにしてもよい。
【0105】
また、テーブルモードまたはTVモードでは、左コントローラ3または右コントローラ4を使用することもできる。左コントローラ3のみが使用される場合には、アナログスティック32が操作されることで、カーソルオブジェクト354が移動され、下方向ボタン34が操作されることで、選択された風船オブジェクト352を割ることが決定される。また、右コントローラ4のみが使用される場合には、アナログスティック52が操作されることで、カーソルオブジェクト354が移動され、Xボタン55が操作されることで、選択された風船オブジェクト352を割ることが決定される。以下、この明細書において同様である。
【0106】
また、本体装置2は、タッチパネル13を備えるため、プレイヤは、ゲーム画面350において、割りたい風船オブジェクト352をタッチすることで、当該風船オブジェクト352を選択すると同時に、当該風船オブジェクト352を割ることを決定することもできる。
【0107】
つまり、この実施例では、ミニゲームをプレイする場合には、タッチ操作することができない場合および一部の例外を除いて、左コントローラ3および右コントローラ4で操作することができるし、タッチパネル13で操作することもできる。
【0108】
上述したTVモードでは、本体装置2がクレードルに装着されており、プレイヤが本体装置2のタッチパネル13を操作できない状態であり、この状態がタッチ操作することができない場合に相当する。また、上述の一部の例外として、一部のミニゲームについては、左コントローラ3または/および右コントローラ4で操作する場合と、タッチパネル13で操作する場合とでは非常に大きなスコアの差がつく傾向があるため、その一部のミニゲームについては、左コントローラ3または/および右コントローラ4のみ(説明の便宜上、「ボタン操作のみ」と記載することがある)で操作するゲームと、タッチパネル13のみ(説明の便宜上、「タッチ操作のみ」と記載することがある)で操作するゲームの2種類が用意されている。したがって、その一部のミニゲームについては、ミニゲームを開始する前に、プレイヤが、2種類のうちから1種類を選択する。したがって、その一部のミニゲームについては、ボタン操作のみでプレイする場合と、タッチ操作のみでプレイする場合とで、スコアも別々に管理される。
【0109】
なお、携帯モードおよびテーブルモードでは、タッチパネル13を使用することができる。
【0110】
また、この実施例のゲームアプリケーションでは、プレイヤがミニゲームをプレイする度に、プレイデータが記憶される。ここで、プレイデータとは、ミニゲームについて、各問題の開始から終了までの期間におけるプレイヤの操作入力の変化を示すデータである。この実施例では、プレイヤが操作入力を行ったときの時間(つまり、現在の問題の開始からの経過時間)に対応して、操作入力の内容が記載される。操作入力の内容は、操作された操作ボタンの種類、操作ボタンまたはアナログスティックによる方向入力の値またはタッチ位置である。また、プレイデータには、タッチフラグが付加されている。タッチフラグは、ミニゲームをプレイしたときに、タッチパネル13を用いて操作したかどうかを判断するためのフラグである。一度でもタッチパネル13を用いて操作した場合に、タッチフラグはオンされ、一度もタッチパネル13を用いて操作していない場合に、タッチフラグはオフされる。
【0111】
ただし、プレイデータでは、操作入力の内容に変えて、操作入力に従って実行した処理の内容が記載されてもよい。実行した処理の内容は、オブジェクトの移動、選択および決定である。図10に示したミニゲームでは、処理の内容は、カーソルオブジェクト354の移動(または、移動後の位置座標)、風船オブジェクト352の選択および風船オブジェクト352を割ることの決定である。
【0112】
さらに、この実施例の仮想ゲームでは、プレイヤがミニゲームをプレイし、プレイした結果のスコアが最高スコアを更新した場合には、ゴーストデータが生成される。この実施例では、ゴーストデータは、ゴーストについてのデータであり、プレイヤ名、分野名、ミニゲーム名、プレイデータ、スコアおよびプレイ日時のデータである。
【0113】
プレイヤ名は、ゴーストデータが生成されるプレイヤの名称である。プレイヤの名称はプレイヤを個別に識別するための情報であるが、プレイヤ間で同じプレイヤ名を使用することが許容される場合は、プレイヤ名とは別の固有の識別情報がゴーストデータに含まれる。
【0114】
分野名は、ゴーストデータに含まれるプレイデータを生成したときにプレイされたミニゲームが属する分野の名称である。ミニゲーム名は、ゴーストデータに含まれるプレイデータを生成したときにプレイされたミニゲームの名称である。ただし、ミニゲーム名に代えてミニゲームを識別するための他の識別情報が記載されてもよい。プレイデータは、プレイしたミニゲームの最高スコアを更新したときのプレイデータである。スコアは、プレイしたミニゲームの最高スコアを更新したときのスコアである。プレイ日時は、最高スコアを更新したミニゲームをプレイした日時であり、一例として、プレイ開始またはプレイ終了の日時である。
【0115】
なお、ゴーストデータには、プレイヤの国籍およびプレイヤのアイコン画像のような他の情報が含まれてもよい。
【0116】
ゴーストデータは、プレイヤの操作に従ってサーバ202に送信(つまり、アップロード)され、サーバ202に登録することができる。サーバ202は、通信可能に接続された本体装置2からのゴーストデータを受信すると、ゴーストデータを送信したプレイヤのゴーストデータを初めて登録するかどうかを判断する。具体的には、サーバ202は、ゴーストデータに含まれるプレイヤ名のプレイヤにゴーストとしての識別情報(以下、「ゴーストID」という)が付与されているかどうかを判断する。
【0117】
ゴーストIDが当該プレイヤに付与されていない場合には、当該プレイヤに対してゴーストIDを発行および付与し、受信したゴーストデータを当該ゴーストIDに紐づけてHDD202cに記憶する。また、サーバ202は、ゴーストIDを発行すると、ゴーストデータの送信元の本体装置2に、発行したゴーストIDを通知する。
【0118】
ただし、ゴーストデータには、ゴーストデータの識別情報(以下、「ゴーストデータID」という)が付与され、このゴーストデータIDがゴーストIDに紐づけられる。したがって、プレイヤによって登録された複数のゴーストデータは個別に識別可能である。
【0119】
この実施例では、プレイヤが、ゴーストデータをサーバ202に登録するかどうかを決定するため、プレイヤによって、ゴーストデータをサーバ202に登録することが決定される前にゴーストデータを生成することに代えて、最高スコアが更新され、さらに、プレイヤによって、ゴーストデータをサーバ202に登録することが決定された後に、ゴーストデータが生成されるようにしてもよい。
【0120】
ただし、ゴーストデータは、プレイヤの操作によらず、自動的にサーバ202に送信され、サーバ202に登録されてもよい。
【0121】
なお、プレイヤは、SNSにゴーストIDを載せたり、ゴーストIDを記載したメッセージを本体装置2から後述するフレンドのプレイヤの本体装置2に送信したり、ゴーストIDを記載した電子メールまたはショートメッセージサービスで知り合いまたは友達に送信したりすることで、ゴーストIDを他のプレイヤに通知する。プレイヤは、ゴーストIDを用いることで、後述するように、プレイヤまたはSNS等で当該ゴーストIDを知った他のプレイヤは、ゴーストIDに紐づけられたゴーストデータのゴーストと対戦することができる。
【0122】
また、1人用メニュー画面300でアイコン304がオンされると、「ゴースト対戦」が選択され、対戦するゴーストの種類と対戦するゴーストを選択するための画面のそれぞれが据置型モニタまたはディスプレイ12に順次表示される。ゴーストの種類およびゴーストの選択については、後で詳細に説明する。
【0123】
プレイヤが対戦するゴーストの種類および対戦するゴーストを選択すると、対戦するゴーストのゴーストデータに含まれるミニゲーム名のミニゲームが開始される。図11はゴースト対戦画面400の限定しない一例を示す。ゴースト対戦画面400は、プレイヤのゲーム画面402およびゴーストのゲーム画面404を含む。
【0124】
プレイヤのゲーム画面402とゴーストのゲーム画面404は、ゴーストデータに含まれるミニゲーム名のミニゲームのゲーム画面である。ゴーストと対戦する場合には、プレイヤおよびゴーストがそれぞれ問題に回答する。つまり、プレイヤおよびゴーストは、それぞれ、個別ミニゲームプレイにおけるミニゲームをプレイする場合と同様に、ミニゲームをプレイする。ただし、ゴーストは、ゴーストデータに含まれるプレイデータに従ってミニゲームをプレイする。つまり、ゴースト対戦では、ゴーストは過去にプレイヤまたは他のプレイヤがミニゲームをプレイしたときのプレイデータに従って当該ミニゲームをプレイするため、プレイヤはゴーストと仮想的に対戦する。上述したように、プレイヤはゴーストと非同期でまたは非同時的に対戦する。プレイヤおよびゴーストのスコアは、それぞれ、個別ミニゲームプレイにおけるミニゲームをプレイする場合と同様に加算される。すべての問題に回答した後のプレイヤおよびゴーストのスコアの大きさで勝敗が決定される。
【0125】
なお、この実施例では、ゴースト対戦において、プレイヤのスコアが最高スコアを更新したとしても、ゴーストデータが生成されたり、サーバ202に登録されたりすることはない。ただし、ゴースト対戦によるプレイヤのスコアが最高スコアを更新した場合にもゴーストデータを生成し、プレイヤの操作に従ってサーバ202に登録されるようにしてもよい。
【0126】
また、1人用メニュー画面300でアイコン306がオンされると、「総合テスト」でミニゲームをプレイすることが選択され、プレイヤが現在の思考の柔軟性を知るための総合テストのゲームが実行される。総合テストのゲームでは、各分野から1つずつミニゲームが選択され、順番にプレイし、プレイした結果から現在の思考の柔軟性が測定(または、計算)され、分野別に示される。
【0127】
一例として、各分野では、ミニゲームがプレイヤのレベルに応じて選択される。ただし、ミニゲームはランダムに選択されてもよい。各分野について選択されたミニゲームは、図10を用いて説明したミニゲームと同様に、正確さと速さを目指すゲームである。ミニゲームにおける複数(たとえば、10個)の問題において正解した数が多く、問題に正解するために費やした時間が短い程、高いスコアが加算される。また、プレイヤは、個別ミニゲームプレイにおけるミニゲームの場合と同様に、或る問題の回答中に制限時間を超えてしまったり、或る問題に誤って回答したりした場合には、当該問題については不正解となる。一例として、各分野についてのミニゲームをすべてプレイした後に、各分野についてのミニゲームのスコアがプレイヤに提示される。
【0128】
また、総合テストのゲームの場合にも、各分野のミニゲームにおいて、プレイヤが自身の最高スコアを更新したミニゲームについては、ゴーストデータが生成され、プレイヤの操作に従ってサーバ202に登録することができる。
【0129】
また、メインメニュー画面でマルチプレイモードが選択されると、プレイヤの人数を選択する画面においてプレイヤの人数が選択され、プレイヤを選択する画面において人数分の各プレイヤが選択され、プレイするミニゲームを選択する画面においてミニゲームが選択された後に、選択されたミニゲームのゲーム画面が据置型モニタまたはディスプレイ12に表示される。また、プレイヤが選択された場合には、プレイヤ毎に、使用するコントローラが登録される。
【0130】
マルチプレイモードにおいて、複数のプレイヤで対戦する場合には、各プレイヤについてのゲーム画面が表示され、各プレイヤが問題に回答し、問題毎に順位が決定される。問題に正解するのに費やした時間が短い程、順位が上位である。したがって、上位のプレイヤである程、加算されるスコアが多くされる。個別ミニゲームプレイにおけるミニゲームと同様に、或る問題の回答中に制限時間を超えてしまったり、或る問題に誤って回答したりした場合には、当該問題については不正解となる。すべてのプレイヤのプレイが終了すると、最終的なスコアでミニゲームの順位が決定される。
【0131】
詳細な説明は省略するが、各プレイヤは、同じミニゲームであっても、異なるレベルを選択してプレイすることができる。したがって、プレイヤ間の経験値またはプレイのレベルの差を無くして、または、少なくして、対戦を楽しむことができる。
【0132】
また、複数のプレイヤで対戦する場合にも、自身の最高スコアを更新したプレイヤについては、ゴーストデータが生成され、該当するプレイヤの操作に従ってゴーストデータをサーバ202に登録することができる。
【0133】
また、複数のプレイヤが協力してミニゲームをプレイする場合には、当該ミニゲームのゲーム画面が1つ表示される。複数のプレイヤが順番に操作を行い、問題に正解すると各プレイヤにスコアが加算される。或る問題の回答中に制限時間を超えてしまったり、或る問題に誤って回答したりした場合には、当該問題については不正解となる。
【0134】
なお、この実施例では、複数のプレイヤが協力してミニゲームをプレイする場合には、ゴーストデータが生成されることはない。
【0135】
ここで、この実施例のゴーストの選択方法について説明する。プレイヤは、世界のゴースト、ともだちのゴースト、家族のゴーストまたは特定のゴーストのいずれかを選択することができる。
【0136】
世界のゴーストは、ネットワーク204に接続された本体装置2を使用して、この実施例のゲームアプリケーションにおけるミニゲームをプレイしたプレイヤであり、国内のみならず海外のプレイヤを含む。また、世界のゴーストには、他の本体装置2を使用する他のプレイヤのみならず、本体装置2を使用するプレイヤ自身も含まれる。
【0137】
ともだちのゴーストは、いわゆるフレンドのプレイヤである。フレンドのプレイヤとは、本体装置2にフレンドとして登録されたプレイヤを意味する。本体装置2にフレンドとして登録されたプレイヤとは、当該プレイヤを識別するための固有の識別情報(以下、「フレンド識別情報」という)および当該プレイヤが使用する他の本体装置2と通信による接続状態を確立するための接続情報を本体装置2に登録されたプレイヤを意味する。ただし、フレンド識別情報および接続情報は、サーバ202で管理されてもよい。
【0138】
また、フレンドとは、プレイヤ間の相互の同意に基づいて成立する交友関係をいう。フレンドは、一方のプレイヤが他方のプレイヤに対してフレンドの成立を求めるフレンド申請を行い、他方のプレイヤがこのフレンド申請を承認することで成立する。または、双方のプレイヤが相手に対してフレンド申請を行うことで成立する。フレンド同士のプレイヤは、それぞれの本体装置2を用いてデータの送受信を行うなど、互いに情報を共有することができる。
【0139】
家族のゴーストは、家族のプレイヤである。家族のプレイヤとは、本体装置2を使用するユーザとして登録され、かつ、過去にこの実施例のゲームアプリケーションにおけるミニゲームをプレイしたプレイヤを意味する。
【0140】
特定のゴーストは、ゴーストIDで特定される1のゴーストである。したがって、特定のゴーストは、世界のゴースト、ともだちのゴーストまたは家族のゴーストに含まれるゴーストと同じであってもよい。
【0141】
上述したように、ゴースト対戦では、プレイヤとゴーストがそれぞれミニゲームをプレイする。また、ミニゲームをプレイする場合には、左コントローラ3または/および右コントローラ4で操作することができるし、タッチパネル13で操作することもできる。
【0142】
左コントローラ3または/および右コントローラ4で操作してミニゲームをプレイする場合には、図10に示した例では、プレイヤは、カーソルオブジェクト354を移動させて風船オブジェクト352を選択し、さらに、選択した風船オブジェクト352を割ることを決定する。つまり、選択と決定の操作を行う。これに対して、タッチパネル13で操作する場合には、プレイヤは、風船オブジェクト352を選択すると同時に、当該風船オブジェクト352を割ることを決定する。つまり、選択と決定を一度の操作で行う。したがって、タッチパネル13で操作した方が正解するまでに費やす時間が短くなり、左コントローラ3または/および右コントローラ4で操作する場合よりも高いスコアが加算される。つまり、タッチパネル13で操作した方が、左コントローラ3または/および右コントローラ4で操作するよりも有利である。これは、ミニゲームにおける一部の問題または問題の途中で一時的に、タッチパネル13で操作したとしても同様のことが言える。
【0143】
また、タッチパネル13で操作した方が左コントローラ3または/および右コントローラ4で操作するよりも短時間で回答することができることが多い理由としては、一般的にタッチパネル操作の方が選択操作にかかる時間が短いという点がある。一例として、仮想の電卓の数字キーをタッチパネル13で操作する場合には、押したい数字キーに向かって指を移動させるだけで済むのに対し、左コントローラ3または/および右コントローラ4で操作する場合には、押したい数字キーを指示するカーソルを今のカーソル位置から一つずつ移動させる操作が必要であるためである。
【0144】
したがって、この実施例では、プレイヤがTVモードでプレイしている場合には、タッチパネル13で操作することができないため、タッチパネル13で操作したゴーストについては対戦相手として選出しないようにしてある。このようにして、プレイヤが不利な状況でゴーストと対戦することが事前に回避される。
【0145】
また、タッチパネル13で操作が行われる場合はカーソルの移動という操作が存在しないため、タッチパネル13で操作したゴーストデータとプレイヤがゴースト対戦する場合、プレイヤにとってはそのゴーストがカーソル移動を伴わずにミニゲームをプレイしているかのように見え、プレイヤがカーソル操作を伴うボタン操作を行っている場合は不公平であるという印象を与えてしまうこともある。しかし、上述のような選出を行うことでこのような印象をプレイヤに与えることを回避することができる。
【0146】
さらには、プレイヤがTVモードでプレイしている場合に、仮にタッチパネル13で操作したゴーストが対戦相手として選出されるようにすると、より素早く操作するためにプレイヤがTVモードを止めて、タッチパネル13を用いて操作できる他のプレイモードに変更したくなる可能性があるが、そのように変更することはプレイヤにとって手間をかけさせるものである。上述のような選出を行うことでこのような手間がプレイヤに発生することを回避することができる。
【0147】
ただし、ともだちのゴーストまたは家族のゴーストと対戦する場合には、プレイヤがTVモードでプレイしている場合であっても、タッチパネル13で操作したゴーストを対戦相手として選出するようにしてある。ともだちのゴーストおよび家族のゴーストの数は世界のゴーストと比較すると非常に少ないため、タッチパネル13で操作したともだちのゴーストまたは家族のゴーストを対戦相手として選出しない場合には、選出されるゴーストの数が非常に少なくなってしまい、所望のともだちのゴーストまたは家族のゴーストと対戦できなくなるためである。また、ともだちのゴーストおよび家族のゴーストの数が少ないため、タッチパネル13で操作したともだちのゴーストまたは家族のゴーストを対戦相手の候補から除外すると、除外されたことにプレイヤが気付きやすくなるためでもある。
【0148】
つまり、プレイヤは、フレンドのプレイヤまたは家族のプレイヤのような所定の関係(「第2関係」に相当する)を有するプレイヤについてのゴーストと対戦する場合には、そのプレイヤがタッチパネル13を操作しているかどうかに関係無く、第2関係を有するプレイヤについてのゴーストを選出するようにしてある。
【0149】
したがって、この実施例では、ゴースト対戦が選択されると、世界のゴーストと対戦することが選択されたかどうかが判断される。世界のゴーストと対戦することが選択された場合には、さらに、使用態様がTVモードであるかどうかが判断される。使用態様がTVモードである場合には、タッチパネル13で操作しないで、左コントローラ3または/および右コントローラ4で操作したゴースト(つまり、タッチフラグがオフであるプレイデータを含むゴーストデータのゴースト)を選出することがサーバ202に要求される。つまり、タッチパネル13で操作したゴーストは選出されない。
【0150】
世界のゴーストと対戦することが選択されていない場合、すなわち、ともだちのゴースト、家族のゴーストまたは特定のゴーストと対戦することが選択された場合には、使用態様に関係なく、ともだちのゴースト、家族のゴーストまたは特定のゴーストを選出することがサーバ202に要求される。
【0151】
また、世界のゴーストと対戦することが選択され、使用態様が携帯モードまたはテーブルモードである場合には、プレイヤが直前のミニゲームにおいてタッチ操作したかどうかを判断し、タッチ操作していない場合には、タッチフラグがオフであるプレイデータを含むゴーストデータのゴースト(以下、単に「タッチフラグがオフのゴースト」という)を選出することがサーバ202に要求される。
【0152】
つまり、対戦するミニゲームと同じミニゲームであるかどうかには関係なく、タッチ操作しないと考えられるプレイヤについては、当該プレイヤが不利な状況になることを回避するために、タッチフラグがオフのゴーストを選出することが要求される。
【0153】
また、プレイヤは、世界のゴーストのように、プレイヤ自身または他の本体装置2を使用するプレイヤのような別の所定の関係(「第1関係」に相当する)を有するプレイヤについてのゴーストと対戦する場合には、ゲームシステム1の使用態様のみならず、プレイヤがタッチパネル13で操作しているかどうかに基づいて、第1関係を有するプレイヤについてのゴーストが選出される。
【0154】
ただし、これは一例であり、今回ゲームアプリケーションのプログラムの実行を開始してから直前のミニゲームまでのいずれかのミニゲームにおいてタッチ操作したかどうかを判断し、いずれのミニゲームにおいてもタッチ操作していない場合には、タッチフラグがオフのゴーストを選出することがサーバ202に要求されるようにしてもよい。または、直前の複数回のミニゲームにおいてタッチ操作するかどうかを判断するようにしてもよい。
【0155】
このように、タッチ操作が可能な使用態様については、さらに、プレイヤの操作方法を考慮して、ゴーストを選出することが要求される。つまり、ゲームシステム1の使用態様およびプレイヤの操作方法のような、プレイヤのプレイに関する状態(以下、「プレイ状態」という)に基づいて、タッチ操作を一度でも行ったゴーストを選出するかどうかが判断される。
【0156】
この実施例では、タッチ操作することができないまたはタッチ操作しないプレイヤに対しては、タッチ操作したゴーストを選出しないようにしてあるが、これに限定される必要はない。タッチ操作することができないまたはタッチ操作しないプレイヤに対しては、タッチフラグがオフのゴーストを優先して選出することがサーバ202に要求されてもよい。
【0157】
このようにしても、プレイヤのプレイ状態に合わせて適切なゴーストを選出することができる。したがって、タッチ操作することができないまたはタッチ操作しないプレイヤは、タッチフラグがオフのゴーストを選択することができるため、不利な状況を回避することができる。
【0158】
また、予めタッチ操作のみでプレイすることがゴーストのプレイヤにより選択された一部のミニゲームについてのゴーストは、TVモードでは選出されず、携帯モードまたはテーブルモードでは選出される場合がある。タッチ操作のみでプレイすることが選択された一部のミニゲームについてのゴーストと対戦する場合には、タッチ操作のみを行うことが許可される。具体的には、左コントローラ3および右コントローラ4の操作データは無効にされ、タッチパネル13からのタッチ入力についての操作データに従ってゲーム制御処理(後述する、ステップS77)が実行される。
【0159】
また、予めボタン操作のみでプレイすることがゴーストのプレイヤにより選択された一部のミニゲームについてのゴーストは、TVモード、携帯モードおよびテーブルモードのいずれにおいても選出される場合がある。ボタン操作のみでプレイすることが選択された一部のミニゲームについてのゴーストと対戦する場合には、ボタン操作およびタッチ操作の両方が許可される。具体的には、左コントローラ3または/および右コントローラ4の操作データ、または、タッチパネル13からのタッチ入力についての操作データに従ってゲーム制御処理(後述する、ステップS77)が実行される。
【0160】
つまり、一部のミニゲームについては、左コントローラ3または/および右コントローラ4で操作する場合と、タッチパネル13で操作する場合とで非常に大きなスコアの差がつく傾向があるため、ボタン操作のみでプレイするか、タッチ操作のみでプレイするかが、プレイヤによって指定されることによって、そのプレイデータがゴーストデータとして保存される。
【0161】
また、タッチ操作のみでプレイすることが指定されたゴーストと対戦する場合には、プレイヤはタッチ操作のみを行うことができる。つまり、タッチパネル13のみを使用することが許可される。ボタン操作のみでプレイすることが指定されたゴーストと対戦する場合には、プレイヤはボタン操作およびタッチ操作を行うことができる。つまり、左コントローラ3または/および右コントローラ4を使用することと、タッチパネル13を使用することが許可される。このようにすることで、タッチ操作を行うことが多いプレイヤがボタン操作を強制されることが防止される。
【0162】
上述したように、1人用メニュー画面300でアイコン304がオンされると、図12に示すようなゴースト対戦選択画面450が据置型モニタまたはディスプレイ12に表示される。ゴースト対戦選択画面450には、5つのアイコン(または、ボタン画像)452、454、456、458および460が設けられる。アイコン452は、世界のゴーストと対戦するために設けられる。アイコン454は、ともだちのゴーストと対戦するために設けられる。アイコン456は、家族のゴーストと対戦するために設けられる。アイコン458は、特定のゴーストと対戦するために設けられる。アイコン460は、メインメニューに戻るために設けられる。
【0163】
アイコン452がオンされると、図13に示すように、対戦する世界のゴーストを選択するための選択画面(説明の都合上、「第1選択画面」という)500が据置型モニタまたはディスプレイ12に表示される。
【0164】
図13に示すように、第1選択画面500には、複数のカードオブジェクト502、カーソルオブジェクト504、アイコン(ボタン画像)506およびアイコン508が設けられる。
【0165】
カードオブジェクト502は、対戦するゴーストを選択するためのオブジェクトであって、ゴースト(ここでは、世界のゴースト)についての情報(以下、「ゴーストの情報」という)の少なくとも一部が記載される。この実施例では、ゴーストの情報は、ゴーストデータに含まれる情報のうち、プレイデータを除いた情報であり、具体的には、日付、分野名、ミニゲーム名、プレイヤ名およびスコアの情報である。
【0166】
第1選択画面500を表示するときに、本体装置2は世界のゴーストについてのゴーストの情報の送信をサーバ202に要求する。ただし、使用態様がTVモードである場合には、本体装置2は、タッチパネル13で操作しないで、左コントローラ3または/および右コントローラ4で操作したゴーストを選出することがサーバ202に要求される。また、使用態様が携帯モードまたはテーブルモードである場合には、本体装置2は、プレイヤが直前のミニゲームでタッチ操作したかどうかを判断し、タッチ操作していない場合には、タッチパネル13で操作しないで、左コントローラ3または/および右コントローラ4で操作したゴーストを選出することがサーバ202に要求される。
【0167】
サーバ202は、本体装置2からのゴーストの情報の送信要求に応じて、管理している複数のゴーストデータから所定数(たとえば、7個)選出する。ただし、本体装置2からタッチパネル13で操作しないで、左コントローラ3または/および右コントローラ4で操作したゴーストを選出することが要求されている場合には、サーバ202は、タッチフラグがオフのゴーストデータを選出する。一方、本体装置2からタッチパネル13で操作しないで、左コントローラ3または/および右コントローラ4で操作したゴーストを選出することが要求されていない場合には、サーバ202は、タッチフラグに関係無くゴーストデータを選出する。さらに、サーバ202は、ゴーストを選出するとき、日付が新しいものを優先的に選出するようにしてある。これは一例であり、ランダムに選択されてもよいし、自分の強さを基準として同等の強さのゴーストを選択するようにしてもよい。
【0168】
サーバ202は、7個のゴーストデータを選出すると、ゴーストデータの各々に含まれるゴーストの情報を要求元の本体装置2に送信する。したがって、本体装置2は、サーバ202から受信したゴーストの情報を用いて第1選択画面500を据置型モニタまたはディスプレイ12に表示する。ただし、ゴーストの情報には、ゴーストデータIDが付加されている。
【0169】
なお、図13では、右端のカードオブジェクト502では、ゴーストの情報を省略してある。また、第1選択画面500に含まれていないカードオブジェクト502については、カーソルオブジェクト504を左または右に移動させることで右または左に移動させ、表示することができる。後述する第2選択画面500a(図14参照)についても同様である。
【0170】
また、詳細な説明は省略するが、第1選択画面500が表示されている場合に、プレイヤがゴーストの入れ替えを指示すると、サーバ202は、新たに7個のゴーストデータを選出して、選出したゴーストデータの各々のゴーストの情報を要求元の本体装置2に送信する。ただし、先に選出されたゴーストデータが、タッチフラグがオフのゴーストデータである場合には、新たに選出されるゴーストデータもタッチフラグがオフのゴーストデータである。したがって、新たに選出された別のゴーストの情報を示すカードオブジェクト502が第1選択画面500に表示される。つまり、第1選択画面500が更新される。
【0171】
また、第1選択画面500においては、つまり、世界のゴーストを選択する場合には、カードオブジェクト502には、日付、分野名、?マークおよび累積スコアが記載される。
【0172】
日付は、ゴーストデータに含まれる日付であり、年月日が記載される。分野名は、ゴーストデータとして登録されたプレイデータを記憶したときにプレイしたミニゲームが分類された分野の名称であり、この実施例では、「記憶」、「直感」、「分析」、「知覚」または「数字」が記載される。
【0173】
?マークは、ミニゲーム名とプレイヤ名に代えて表示される。世界のゴーストを選択する場合には、ミニゲーム名を隠すことで、プレイヤに、対戦を行うまでどのようなミニゲームで対戦するかが分からないという楽しみを与えることができる。また、先にミニゲーム名を表示することで、苦手なミニゲームが避けられてしまうといったことも防ぐことができる。一方で、後述のともだちのゴーストまたは家族のゴーストとの対戦においては、勝ち負けよりもそのゴーストと対戦することの楽しみが大きいため、最初からミニゲーム名を表示するようにしている。
【0174】
スコアは、ゴーストデータに含まれるスコアである。ただし、スコアに代えて、プレイヤの強さまたはレベルが記載されてもよい。
【0175】
プレイヤは、1または複数のカードオブジェクト502に記載されたゴーストの情報を参照して、所望の1のカードオブジェクト502を選択する。つまり、プレイヤは、ゴーストを選択する。具体的には、カーソルオブジェクト504を移動させて、所望のカードオブジェクト502を選択(または、指示)し、アイコン508をオンすることで、選択したカードオブジェクト502が示すゴーストを対戦相手として決定する。ただし、TVモードでは、プレイヤが左コントローラ3および右コントローラ4を使用する場合には、アナログスティック32が操作されることによってカードオブジェクト502が選択され、Aボタン53がオンされることによって、アイコン508がオンされる。また、携帯モードまたはテーブルモードでは、Aボタン53がオンされる、または、アイコン508がタッチされることによって、アイコン508がオンされる。または、所望のカードオブジェクト502をタッチすることにより、所望のカードオブジェクト502を選択(または、指示)すると同時に、当該カードオブジェクト502が示すゴーストを対戦相手として決定してもよい。
【0176】
対戦相手のゴーストが決定されると、選択したカードオブジェクト502の?マークに代えて、ミニゲーム名とプレイヤ名が表示される。つまり、ゴーストとミニゲームをプレイする前に、対戦するミニゲームと、対戦するゴーストすなわちプレイヤを知ることができる。
【0177】
また、第1選択画面500において、対戦相手のゴーストが決定されると、本体装置2は、決定された対戦相手のゴーストについてのゴーストデータの送信をサーバ202に要求する。ただし、ゴーストデータの送信要求には、当該ゴーストデータのゴーストデータIDが付加されている。サーバ202は、本体装置2から要求されたゴーストデータを、要求元の本体装置2に配信する。したがって、要求元の本体装置2はゴーストデータを取得する。
【0178】
また、第1選択画面500において、アイコン506をオンすることで、1つ前の画面に戻る。つまり、第1選択画面500に代えてゴースト対戦選択画面450が据置型モニタまたはディスプレイ12に表示される。ただし、TVモードでは、プレイヤが左コントローラ3および右コントローラ4を使用する場合には、Bボタン54がオンされることによって、アイコン506がオンされる。また、携帯モードまたはテーブルモードでは、Bボタン54がオンされる、または、アイコン506がタッチされることによって、アイコン506がオンされる。
【0179】
ただし、テーブルモードまたはTVモードでは、左コントローラ3または右コントローラ4を使用することもできる。左コントローラ3のみが使用される場合には、左方向ボタン36が操作されることによって、アイコン506がオンされる。また、右コントローラ4のみが使用される場合には、Aボタン53が操作されることによって、アイコン506がオンされる。以下、この明細書において同様である。
【0180】
また、図12に示すゴースト対戦選択画面450においてアイコン454がオンされると、図14に示すように、対戦するともだちのゴーストを選択するための選択画面(説明の都合上、「第2選択画面」という)500aが据置型モニタまたはディスプレイ12に表示される。第2選択画面500aは、第1選択画面500とほぼ同じであるため、異なる内容について説明する。
【0181】
また、図14に示すように、第2選択画面500aには、複数のカードオブジェクト502a、カーソルオブジェクト504、アイコン(ボタン画像)506およびアイコン508が設けられる。
【0182】
第1選択画面500と比較して分かるように、第2選択画面500aは、カードオブジェクト502aに、ゴーストの情報がすべて表示される。ともだちのゴーストと対戦するため、ゴーストが誰であるかを予め分かった方がゴーストを選択し易く、ミニゲームが何であるかを予め分かった方が友達と対戦する楽しみが大きい。
【0183】
第2選択画面500aを表示するときに、本体装置2がサーバ202にともだちのゴーストについてのゴーストの情報の送信を要求する。ただし、ともだちのゴーストについてのゴーストの情報の送信を要求する場合には、登録されているすべてのフレンドのプレイヤについてのフレンド識別情報もサーバ202に送信される。
【0184】
サーバ202は、ともだちのゴーストについてのゴーストの情報の送信要求に応じて、管理している複数のゴーストデータの中からともだちのゴーストについてのゴーストデータを選出し、選出したゴーストデータの各々に付加されたゴーストの情報を要求元の本体装置2に送信する。ただし、ともだちのゴーストデータが7個を超えて登録されている場合には、すべてのともだちのゴーストのうちから日付の新しい7個のゴーストデータが選出される。したがって、本体装置2は、サーバ202から受信したゴーストの情報を用いて第2選択画面500aを据置型モニタまたはディスプレイ12に表示する。
【0185】
ただし、各プレイヤのフレンド識別情報をサーバ202に記憶しておき、記憶しているフレンド識別情報を利用して、ともだちのゴーストについてのゴーストデータを選出するようにしてもよい。
【0186】
また、ゴーストデータを選出するルールにおいて、日付とは異なる基準を用いて選出するようにしてもよい。
【0187】
また、上述したように、プレイヤが予めタッチ操作のみを行うことを選択したミニゲームについてのゴーストに対応するカードオブジェクト502には、タッチ操作のみを行うことが示される。図14に示す例では、カードオブジェクト502のミニゲーム名の横に「(タッチ)」と表示される。ただし、これは一例であり、カードオブジェクト502の上方または下方に「(タッチ)」の文字列が記載されてもよいし、文字列に代えて、タッチ操作のみを行うことを選択したことを示すマークが表記されてもよい。このことは、後述するボタン操作のみを行うことが選択されたミニゲームについてのゴーストに対応するカードオブジェクト502についても同様である。
【0188】
図示は省略するが、プレイヤが予めボタン操作のみを行うことを選択したミニゲームについてのゴーストに対応するカードオブジェクト502には、ボタン操作のみを行うことが示される。一例として、タッチ操作のみの場合と同様に、カードオブジェクト502のミニゲーム名の横に「(ボタン)」と表示される。
【0189】
このように、ミニゲーム名の横に、「(タッチ)」または「(ボタン)」の文字列が記載されることについては、家族のゴーストの選択画面および特定のゴーストの選択画面についても同様である。
【0190】
なお、上述した第1選択画面500では、ミニゲーム名が表示されないため、タッチ操作のみを行うことまたはボタン操作のみを行うことについても表示されない。
【0191】
その他の内容については、第1選択画面500を表示する場合と同じであるため、重複した説明は省略する。
【0192】
さらに、図12に示すゴースト対戦選択画面450においてアイコン456がオンされると、対戦する家族のゴーストを選択するための選択画面(以下、「家族のゴーストの選択画面」という)が据置型モニタまたはディスプレイ12に表示される。この家族のゴーストの選択画面は、1または複数のカードオブジェクトに表示される内容が家族のゴーストについてのゴーストの情報であること以外は、第2選択画面500aと同じである。
【0193】
家族のゴーストの選択画面を表示するときに、本体装置2はDRAM85に記憶されているプレイヤデータ854e(図15および図16)から家族のゴーストについてのゴーストの情報を取得する。したがって、本体装置2は、取得したゴーストの情報を用いて家族のゴーストの選択画面を据置型モニタまたはディスプレイ12に表示する。
【0194】
その他の内容については、第2選択画面500aを表示する場合と同じであるため、重複した説明は省略する。
【0195】
ただし、家族のゴーストについてのゴーストの情報も世界のゴーストおよびともだちのゴーストと同様に、サーバ202から取得するようにしてもよい。この場合、本体装置2は、サーバ202に家族のゴーストについてのゴーストの情報の送信を要求する。また、本体装置2は、家族のゴーストについてのゴーストの情報の送信を要求する場合には、家族のゴーストを選択しているプレイヤ以外の家族のプレイヤについての識別情報もサーバ202に送信する。
【0196】
また、図12に示すゴースト対戦選択画面450においてアイコン458がオンされると、特定のゴーストの選択処理が実行される。特定のゴーストの選択処理が開始されると、まず、特定のゴーストについてのゴーストの情報を取得するための画面(以下、「取得画面」)が据置型モニタまたはディスプレイ12に表示される。
【0197】
上述したように、ゴーストデータをサーバ202に登録したプレイヤについてはゴーストIDが付与されている。図示は省略するが、取得画面には、ゴーストIDを入力するための入力欄と、ゴーストIDをサーバ202に送信して、サーバ202から特定のゴーストについてのゴーストの情報を取得(受信)するためのアイコン(取得ボタン)と、ゴースト対戦選択画面450に戻るためのアイコン(戻るボタン)が設けられる。
【0198】
ただし、ゴーストIDには、1または複数のゴーストデータIDが紐づけられるため、特定のゴーストについての1または複数のゴーストの情報がサーバ202から取得される。
【0199】
したがって、プレイヤは、入力欄にゴーストデータIDを入力し、取得ボタンをオンすると、入力されたゴーストデータIDをサーバ202に送信する。サーバ202は、ゴーストデータIDを受信すると、管理しているゴーストデータの中から、ゴーストデータIDが示すゴーストデータを選択し、選択したゴーストデータに含まれるゴーストの情報を送信元の本体装置2に送信する。したがって、本体装置2は、サーバ202から受信したゴーストの情報を表示した1または複数のカードオブジェクトを表示する画面(以下、「特定のゴーストの選択画面」という)を据置型モニタまたはディスプレイ12に表示する。図示は省略するが、一例として、特定のゴーストの選択画面は、1または複数のカードオブジェクトに表示される内容が特定のゴーストについてのゴーストの情報であること以外は、第2選択画面500aと同じである。
【0200】
プレイヤは、1または複数のカードオブジェクトに記載されたゴーストの情報を参照して所望の1のカードオブジェクトを選択し、対戦相手のゴーストを決定する。ゴーストを選択および決定する方法は、第1選択画面500を用いて説明した内容と同様である。
【0201】
対戦相手のゴーストが決定されると、本体装置2は、決定された特定のゴーストについてのゴーストデータの送信をサーバ202に要求する。サーバ202は、本体装置2から要求されたゴーストデータを、要求元の本体装置2に配信する。したがって、要求元の本体装置2はゴーストデータを取得する。
【0202】
また、プレイヤが、特定のゴーストの選択画面において、戻るボタンをオンすると、1つ前の画面に戻る。つまり、特定のゴーストの選択画面に代えてゴースト対戦選択画面450が据置型モニタまたはディスプレイ12に表示される。
【0203】
図15図6に示したDRAM85のメモリマップ850の限定しない一例を示す図である。図15に示すように、DRAM85は、プログラム記憶領域852およびデータ記憶領域854を含む。プログラム記憶領域852には、ゲームアプリケーションのプログラム(つまり、ゲームプログラム)が記憶される。ゲームプログラムは、メイン処理プログラム852a、画像生成プログラム852b、画像表示プログラム852c、操作検出プログラム852d、ゲーム制御プログラム852e、ゴースト登録プログラム852f、ゴースト選択プログラム852g、ゴースト取得プログラム852hおよび使用態様判断プログラム852iなどを含む。ただし、ゲーム画像などの画像を表示する機能およびゲームシステム1の使用態様を判断する機能は本体装置2が備える機能である。したがって、画像表示プログラム852cおよび使用態様判断プログラム852iは、ゲームプログラムに含まれない。
【0204】
詳細な説明は省略するが、各プログラム852a-852iは、本体装置2に電源が投入された後の適宜のタイミングで、フラッシュメモリ84および/またはスロット23に装着された記憶媒体からその一部または全部が読み込まれてDRAM85に記憶される。ただし、各プログラム852a-852iの一部または全部は、本体装置2と通信可能な他のコンピュータから取得するようにしてもよい。
【0205】
メイン処理プログラム852aは、この実施例のゲームアプリケーションの全体的なゲーム処理(以下、「全体処理」という)を実行するためのプログラムである。画像生成プログラム852bは、後述する画像生成データ854dを用いて、ゲーム画像などの各種の画像に対応する表示画像データを生成するためのプログラムである。画像表示プログラム852cは、画像生成プログラム852bに従って生成した表示画像データを表示装置に出力するためのプログラムである。したがって、表示画像データに対応する画像(つまり、1人用メニュー画面300、ミニゲームのゲーム画面350、ゴースト対戦画面400、ゴースト対戦選択画面450、第1選択画面500および第2選択画面500aなど)が据置型モニタまたはディスプレイ12などの表示装置に表示される。
【0206】
操作検出プログラム852dは、左コントローラ3または/および右コントローラ4の操作データ854aまたはタッチパネル13の操作データ854aを取得するためのプログラムである。ゲーム制御プログラム852eは、1または複数のプレイヤの操作に従って、個別ミニゲームプレイにおけるミニゲーム、マルチプレイモードにおけるミニゲーム、ゴースト対戦におけるミニゲームおよび総合テストにおけるミニゲームの各々についてのゲーム制御処理を実行するためのプログラムである。
【0207】
ゴースト登録プログラム852fは、プレイヤの操作に従って、生成されたゴーストデータをサーバ202に登録するためのプログラムである。ただし、複数のプレイヤについてゴーストデータが生成された場合には、ゴースト登録プログラム852fは、各プレイヤの操作に従って、生成されたゴーストデータをサーバ202に登録する。
【0208】
ゴースト選択プログラム852gは、プレイヤの操作に従ってゴースト対戦するゴーストを選択するためのプログラムである。
【0209】
ゴースト取得プログラム852hは、サーバ202から配信されるゴーストデータを取得するためのプログラムである。ただし、家族のゴーストデータは、本体装置2のデータ記憶領域854に記憶されたプレイヤデータ854eから取得される。
【0210】
使用態様判断プログラム852iは、ゲームシステム1の使用態様を判断するためのプログラムであって、判断した結果、すなわち、TVモード、携帯モードまたはテーブルモードの情報(後述する、使用態様データ854g)をデータ記憶領域854に記憶または更新する。
【0211】
なお、プログラム記憶領域852には、BGM等の音を出力するための音出力プログラム、他の機器と通信するための通信プログラム、データをフラッシュメモリ84などの不揮発性の記憶媒体に記憶するためのバックアッププログラムなども記憶される。
【0212】
また、データ記憶領域854には、操作データ854a、送信データ854b、受信データ854c、画像生成データ854d、プレイヤデータ854e、取得ゴーストデータ854fおよび使用態様データ854gなどが記憶される。
【0213】
操作データ854aは、左コントローラ3または/および右コントローラ4から受信される操作データである。この実施例においては、本体装置2が左コントローラ3および右コントローラ4の両方から操作データを受信する場合には、本体装置2は、左コントローラ3および右コントローラ4のそれぞれを識別可能にして操作データ854aを記憶する。また、1または複数の他のコントローラが用いられる場合には、本体装置2は、1または他のコントローラを識別可能にして操作データ854aを記憶する。また、操作データ854aは、タッチパネル13から入力されるタッチ座標のデータである。
【0214】
送信データ854bは、外部のコンピュータまたは他の本体装置2に送信されるデータである。一例として、外部のコンピュータはサーバ202であり、サーバ202には、ゴーストの情報の送信を要求する指示が送信されたり、ゴーストデータの送信を要求する指示が送信されたりする。ただし、ゴーストの情報の送信を要求する指示には、タッチパネル13で操作したゴーストを除外することの情報が付加される場合がある。
【0215】
受信データ854cは、外部のコンピュータまたは他の本体装置2から受信されたデータである。一例として、サーバ202から送信されるゴーストの情報およびゴーストデータが受信される。
【0216】
画像生成データ854dは、ポリゴンデータおよびテクスチャデータなど、表示画像データを生成するために必要なデータである。プレイヤデータ854eは、本体装置2を使用するプレイヤとして登録されたプレイヤであって、この実施例のゲームアプリケーションをプレイする各プレイヤについてのデータである。プレイヤデータ854eの詳細については後で説明する(図22参照)。
【0217】
取得ゴーストデータ854fは、ゴースト対戦において対戦するゴーストについてのゴーストデータである。ゴースト対戦においては、ゴーストは、取得ゴーストデータ854fに含まれるプレイデータに従ってミニゲームをプレイする。
【0218】
使用態様データ854gは、ゲームシステム1の使用態様を示す情報であって、使用態様判断プログラム854iに従って判断されたTVモード、携帯モードまたはテーブルモードの情報である。
【0219】
図示は省略するが、データ記憶領域854には、他のデータが記憶されたり、フラグおよびタイマ(またはカウンタ)が設けられたりする。
【0220】
図16図15に示したプレイヤデータ854eの具体的な内容の一例を示す図である。プレイヤデータ854eは、プレイヤAデータ900、プレイヤBデータ902およびプレイヤCデータ904…を含む。図16に示す例では、プレイヤAデータ900、プレイヤBデータ902およびプレイヤCデータ904の具体的な内容についてはそれぞれ同じであるため、プレイヤAデータ900について説明し、プレイヤBデータ902およびプレイヤCデータ904の説明については省略する。一例として、プレイヤA、プレイヤB、プレイヤC、…は、家族のプレイヤまたは/およびフレンドのプレイヤである。
【0221】
プレイヤAデータ900は、プレイヤ名データ900a、スコアデータ900b、プレイ記録データ900c、プレイデータ900dおよびゴーストデータ900eなどを含む。
【0222】
プレイヤ名データ900aは、プレイヤAデータ900に対応するプレイヤAの名称を示すデータである。上述したように、プレイヤの名称はプレイヤを個別に識別するための情報であるが、プレイヤ間で同じプレイヤ名を使用することが許容される場合は、プレイヤ名とは別の固有の識別情報がプレイヤデータに含まれる。
【0223】
スコアデータ900bは、プレイヤAがプレイ中または今回プレイしたミニゲームのスコアについてのデータである。ただし、総合テストのゲームアプリケーションをプレイした場合には、分野毎の、プレイ中または今回プレイしたミニゲームのスコアについてのデータである。
【0224】
プレイ記録データ900cは、ゲームアプリケーションを最初にプレイしたミニゲームから直前にプレイしたミニゲームまでのプレイデータおよびプレイした各ミニゲームのスコアのデータである。
【0225】
プレイデータ900dは、プレイ中または今回プレイしたミニゲームについてのプレイデータである。
【0226】
ゴーストデータ900eは、ゴーストの情報およびプレイデータ900dを含むゴーストデータである。ただし、ゴーストデータ900eは、ゴースト対戦以外で最高スコアを更新した場合に生成される。
【0227】
なお、プレイヤAデータ900は、この実施例のアプリケーションのゲームについてのプレイヤAの強さまたはレベルを示すデータなども含む。
【0228】
また、プレイヤAデータ900は、サーバ202から通知されたゴーストIDを含む場合がある。
【0229】
さらに、プレイヤAデータ900のうち、プレイヤ名データ、プレイ記録データおよびゴーストデータなどの一部のセーブデータは、本体装置2に電源が投入された後の適宜のタイミングで、フラッシュメモリ84および/またはスロット23に装着された記憶媒体から読み込まれてDRAM85に記憶される。ただしプレイヤ名データ、プレイ記録データおよびゴーストデータなどの一部のセーブデータは、本体装置2と通信可能な他のコンピュータ(たとえば、サーバ202)から取得するようにしてもよい。
【0230】
図17図23は、本体装置2のプロセッサ81(またはコンピュータ)のゲームプログラムの処理(全体処理)の限定しない一例を示すフロー図である。また、図24は、本体装置2のプロセッサ81(またはコンピュータ)の個別ミニゲームプレイの処理の限定しない一例を示すフロー図である。図25は、本体装置2のプロセッサ81(またはコンピュータ)の総合テストの処理の限定しない一例を示すフロー図である。図26は、本体装置2のプロセッサ81(またはコンピュータ)のマルチプレイモードの処理の限定しない一例を示すフロー図である。
【0231】
以下、図17図26を用いて、全体処理、個別ミニゲームプレイの処理、総合テストの処理およびマルチプレイモードの処理について説明するが、同じ処理を実行するステップについては重複する説明は省略することにする。
【0232】
また、図17図26に示すフロー図の各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、この実施例では、基本的には、図17図26に示すフロー図の各ステップの処理をプロセッサ81が実行するものとして説明するが、プロセッサ81以外のプロセッサや専用回路が一部のステップを実行するようにしてもよい。
【0233】
本体装置2の電源が投入されると、全体処理の実行に先だって、プロセッサ81は、図示しないブートROMに記憶されている起動プログラムを実行し、これによってDRAM85等の各ユニットが初期化される。また、このとき、プロセッサ81は、使用態様判断プログラム852iに従って、本体装置2がクレードルに装着されているかどうかと、左コントローラ3および右コントローラ4が本体装置2に装着されているかどうかに基づいて、ゲームシステム1がTVモード、携帯モードおよびテーブルモードのいずれの使用態様であるかを判断する。ただし、使用態様の判断については、全体処理の開始時および開始された後の適宜のタイミングにも行われる。本体装置2は、当該本体装置2のユーザによって、この実施例のゲームプログラムの実行が指示されると、全体処理を開始する。
【0234】
図17に示すように、プロセッサ81は、全体処理を開始すると、ステップS1で、メインメニュー画面を据置型モニタまたはディスプレイ12に表示する。ここでは、プロセッサ81は、画像生成データ854dを用いてメインメニュー画面のゲーム画像を生成し、据置型モニタまたはディスプレイ12に出力する。以下、各種の画面を表示する場合について同様である。
【0235】
次のステップS3では、選択が有るかどうかを判断する。ステップS3で“NO”であれば、つまり、選択が無い場合には、ステップS1に戻る。一方、ステップS3で“YES”であれば、つまり、選択が有る場合には、ステップS5で、シングルプレイモードが選択されたかどうかを判断する。
【0236】
ステップS5で“NO”であれば、つまり、マルチプレイモードが選択されていれば、ステップS7で、後述するマルチプレイモードの処理(図26参照)を実行して、図23に示すステップS91に進む。図示は省略するが、上述したように、マルチプレイモードの処理を実行する前に、プレイヤの人数、各プレイヤおよびプレイするミニゲームが選択される。
【0237】
一方、ステップS5で“YES”であれば、つまり、シングルプレイモードが選択されていれば、ステップS9で、図9に示したような1人用メニュー画面300を据置型モニタまたはディスプレイ12に表示する。図示は省略するが、上述したように、1人用メニュー画面300を表示する前に、プレイヤが選択される。ここでは、プレイヤAが選択されたと仮定する。
【0238】
続くステップS11では、選択が有るかどうかを判断する。ここでは、プロセッサ81は、1人用メニュー画面300において、アイコン302、304または306がオンされたかどうかを判断する。ステップS11で“YES”であれば、図18に示すステップS15に進む。一方、ステップS11で“NO”であれば、ステップS13で、メインメニュー画面に戻るかどうかを判断する。ここでは、プロセッサ81は、1人用メニュー画面300において、アイコン308がオンされたかどうかを判断する。
【0239】
ステップS13で“NO”であれば、つまり、メインメニュー画面に戻らない場合には、ステップS9に戻る。一方、ステップS13で“YES”であれば、つまり、メインメニュー画面に戻る場合には、ステップS1に戻る。したがって、1人用メニュー画面300が非表示され、メインメニュー画面が据置型モニタまたはディスプレイ12表示される。
【0240】
図18に示すように、ステップS15で、ゴースト対戦の選択かどうかを判断する。つまり、プロセッサ81は、アイコン304のオンかどうかを判断する。ステップS15で“NO”であれば、つまり、つまり、ゴースト対戦の選択でなければ、図23に示すステップS85に進む。一方、ステップS15で“YES”であれば、つまり、ゴースト対戦の選択であれば、ステップS17で、図12に示したようなゴースト対戦選択画面450を据置型モニタまたはディスプレイ12に表示する。
【0241】
次のステップS19では、選択が有るかどうかを判断する。ここでは、ゴースト対戦選択画面450において、アイコン452、454、456または458がオンされたかどうかを判断する。ステップS19で“NO”であれば、ステップS17に戻る。一方、ステップS19で“YES”であれば、ステップS21で、世界のゴーストの選択かどうかを判断する。つまり、プロセッサ81は、アイコン452のオンかどうかを判断する。
【0242】
ステップS21で“NO”であれば、つまり、世界のゴーストの選択でなければ、図20に示すステップS41に進む。一方、ステップS21で“YES”であれば、つまり、世界のゴーストの選択であれば、図19に示すステップS23で、TVモードかどうかを判断する。ここでは、プロセッサ81は、使用態様データ854gがTVモードを示すかどうかを判断する。
【0243】
ステップS23で“YES”であれば、つまり、TVモードであれば、ステップS29に進む。一方、ステップS23で“NO”であれば、つまり、携帯モードまたはテーブルモードであれば、ステップS25で、直前のミニゲームでタッチ操作が有るかどうかを判断する。ステップS25では、プロセッサ81は、プレイ記録データ900cに含まれる直前のミニゲームのプレイデータに付加されたタッチフラグがオンであるかどうかを判断する。
【0244】
ステップS25で“YES”であれば、つまり、直前のミニゲームでタッチ操作が有れば、ステップS27で、任意のゴーストの情報の送信をサーバ202に要求して、ステップS31に進む。一方、ステップS25で“NO”であれば、つまり、直前のミニゲームでタッチ操作が無ければ、ステップS29で、タッチパネル13で操作しないで、コントローラ(この実施例では、左コントローラ3または/および右コントローラ4)で操作したゴーストの情報の送信をサーバ202に要求して、つまり、タッチフラグがオフのゴーストの選出をサーバ202に要求して、ステップS31に進む。
【0245】
ステップS31では、サーバ202からゴーストの情報を受信したかどうかを判断する。ステップS31で“NO”であれば、つまり、サーバ202からゴーストの情報を受信していなければ、ステップS31に戻る。一方、ステップS31で“YES”であれば、つまり、サーバ202からゴーストの情報を受信していれば、ステップS33で、図13に示したような第1選択画面500を据置型モニタまたはディスプレイ12に表示する。
【0246】
続いて、ステップS35では、ゴーストの決定かどうかを判断する。ここでは、プロセッサ81は、Aボタン53(左コントローラ3のみが使用される場合には、下方向ボタン34、右コントローラ4のみが使用される場合には、Xボタン55)がオンされたり、アイコン508がタッチされたり、カードオブジェクト502がタッチされたりしたかどうかを判断する。
【0247】
ステップS35で“NO”であれば、つまり、ゴーストの決定でなければ、ステップS37で、ゴースト対戦選択画面450に戻るかどうかを判断する。ここでは、プロセッサ81は、Bボタン54(左コントローラ3のみが使用される場合には、左方向ボタン36、右コントローラ4のみが使用される場合には、Aボタン53)がオンされたり、アイコン506がタッチされたりしたかどうかを判断する。
【0248】
ステップS37で“NO”であれば、つまり、ゴースト対戦選択画面450に戻らない場合には、ステップS33に戻る。図示は省略するが、プレイヤAの操作に従ってカーソルオブジェクト504が右または左に移動され、表示される複数のカードオブジェクト502が左または右に移動されることがある。一方、ステップS37で“YES”であれば、つまり、ゴースト対戦選択画面450に戻る場合には、図18に示したステップS17に戻る。
【0249】
また、ステップS35で“YES”であれば、つまり、ゴーストの決定であれば、ステップS39で、決定されたゴーストについてのゴーストデータの送信をサーバ202に要求して、図22に示すステップS69に進む。つまり、ステップS39では、プロセッサ81は、決定されたゴーストについてのゴーストデータIDをサーバ202に送信する。
【0250】
上述したように、図18のステップS21で“NO”である場合には、図20に示すステップS41で、ともだちのゴーストかどうかを判断する。つまり、プロセッサ81は、アイコン454のオンかどうかを判断する。ステップS41で“NO”であれば、つまり、ともだちのゴーストでなければ、図21に示すステップS55に進む。一方、ステップS41で“YES”であれば、ともだちのゴーストであれば、ステップS43で、ともだちのゴーストの情報の送信をサーバ202に要求する。ここでは、プロセッサ81は、プレイヤAのフレンドとして登録されているすべてのフレンド識別情報もサーバ220に送信する。
【0251】
続くステップS45では、ゴーストの情報を受信したかどうかを判断する。ステップS45で“NO”であれば、ステップS45に戻る。一方、ステップS45で“YES”であれば、ステップS47で、図14に示したような第2選択画面500aを据置型モニタまたはディスプレイ12に表示する。
【0252】
続いて、ステップS49では、ゴーストの決定かどうかを判断する。ステップS49で“NO”であれば、ステップS51で、ゴースト対戦選択画面450に戻るかどうかを判断する。
【0253】
ステップS51で“NO”であれば、ステップS47に戻る。図示は省略するが、プレイヤAの操作に従ってカーソルオブジェクト504が右または左に移動され、、表示される複数のカードオブジェクト502aが左または右に移動されることがある。一方、ステップS51で“YES”であれば、ステップS17に戻る。
【0254】
また、ステップS49で“YES”であれば、ステップS53で、決定されたゴーストについてのゴーストデータの送信をサーバ202に要求して、ステップS69に進む。
【0255】
上述したように、図20のステップS41で“NO”である場合には、図21に示すステップS55で、家族のゴーストであるかどうかを判断する。つまり、プロセッサ81は、アイコン456のオンかどうかを判断する。
ステップS55で“NO”であれば、つまり、家族のゴーストでなければ、ステップS57で、上述した特定のゴーストの選択処理を実行して、ステップS69に進む。
【0256】
一方、ステップS55で“YES”であれば、つまり、家族のゴーストであれば、DRAM85のデータ記憶領域854に記憶されたプレイヤデータ854eから家族のゴーストについてのゴーストの情報を取得する。上述したように、シングルプレイモードのプレイヤとして、プレイヤAが選択された場合について説明しているため、ステップS59では、プレイヤA以外のプレイヤB、C、…のプレイヤBデータ902、プレイヤCデータ904、…の各々に含まれるゴーストデータからゴーストの情報が取得される。
【0257】
次のステップS61では、家族のゴーストの選択画面を据置型モニタまたはディスプレイ12に表示する。続いて、ステップS63で、ゴーストの決定かどうかを判断する。ステップS63で“NO”であれば、ステップS65で、ゴースト対戦選択画面450に戻るかどうかを判断する。
【0258】
ステップS65で“NO”であれば、ステップS61に戻る。図示は省略するが、プレイヤAの操作に従ってカーソルオブジェクトが右または左に移動され、表示される複数のカードオブジェクトが左または右に移動されることがある。一方、ステップS65で“YES”であれば、ステップS17に戻る。
【0259】
また、ステップS63で“YES”であれば、つまり、ゴーストの決定であれば、ステップS67で、決定されたゴーストについてのゴーストデータをプレイヤデータ854eから取得して、図22に示すステップS71に進む。ステップS67では、プレイヤデータ854eから取得したゴーストデータを取得ゴーストデータ854fとしてDRAM85のデータ記憶領域854に記憶する。
【0260】
図22に示すように、ステップS69では、ゴーストデータを取得したかどうかを判断する。ここでは、プロセッサ81は、サーバ202から送信されたゴーストデータを受信したかどうかを判断する。
【0261】
ステップS69で“NO”であれば、つまり、ゴーストデータを取得していなければ、ステップS69に戻る。一方、ステップS69で“YES”であれば、つまり、ゴーストデータを取得していれば、ステップS71で、ゴースト対戦におけるゲーム初期処理を実行する。
【0262】
ただし、プロセッサ81は、サーバ202から取得したゴーストデータを取得ゴーストデータ854fとしてDRAM85のデータ記憶領域854に記憶する。
【0263】
また、ステップS71では、プロセッサ81は、図11に示したようなゴースト対戦画面400の初期画面を据置型モニタまたはディスプレイ12に表示する。ただし、ゴースト対戦画面400には、取得ゴーストデータ854fに含まれるミニゲーム名のミニゲームをプレイするためのプレイヤAのゲーム画面402および取得ゴーストデータ854fのゴーストのゲーム画面404が含まれる。
【0264】
続くステップS73では、操作データを取得する。ここでは、プロセッサ81は、コントローラ(左コントローラ3、右コントローラ4または他のコントローラ)またはタッチパネル13からのタッチ入力についての操作データを取得する。また、ステップS73では、プロセッサ81は、取得ゴーストデータ854fに含まれるプレイデータから現在の時間(フレーム数)の操作データを取得する。
【0265】
次のステップS75では、プレイデータを生成する。図示は省略するが、ゴースト対戦のゲーム開始からの時間(フレーム数)はカウントされており、ステップ73で、プレイヤAの操作データを取得した場合に、プレイヤAのプレイデータ900dが生成または更新される。また、タッチ入力についての操作データを取得した場合には、プレイデータ900dに付加されたタッチフラグがオンされる。
【0266】
続くステップS77では、ゴースト対戦におけるミニゲームのゲーム制御処理を実行する。ここでは、プレイヤAの操作に従ってゲーム画面402に表示されるオブジェクトを選択、移動または決定したり、ゴーストの操作に従ってゲーム画面404に表示されるオブジェクトを選択、移動または決定したりする。また、ゴースト対戦のゲーム制御処理では、プロセッサ81は、ミニゲームにおける各問題の正解および不正解を判断したり、プレイヤAとゴーストのスコアを算出したり、各問題についてプレイヤAの勝敗を決定したり、ミニゲームについてのプレイヤAの最終的な勝敗を決定したりする。
【0267】
ただし、プレイヤAがタッチ操作のみを行うことを選択したミニゲームをプレイしている場合には、左コントローラ3または/右コントローラ4の操作データを検出したとしても、この操作データに基づくゲーム制御処理は実行されない。また、プレイヤAがボタン操作のみを行うことを選択したミニゲームをプレイしている場合には、タッチパネル13からのタッチ入力についての操作データを検出したとしても、この操作データに基づくゲーム制御処理は実行されない。これらのことは、後述する個別ミニゲームプレイの処理、マルチプレイモードの処理および総合テストの処理についても同じである。
【0268】
続いて、ステップS79では、ゲーム画像およびゲーム音声を生成する。ここでは、プロセッサ81は、ステップS77のゴースト対戦におけるミニゲームのゲーム制御処理の結果に基づいて、ゲーム画像に対応するゲーム画像データを生成するとともに、ゲーム音声に対応する音声データを生成する。
【0269】
次のステップS81では、ゲーム画像を表示し、ゲーム音声を出力する。ここでは、プロセッサ81は、ステップS79で生成したゲーム画像データを据置型モニタまたはディスプレイ12に出力するとともに、ステップS79で生成したゲーム音声データを据置型モニタのスピーカまたはコーデック回路87を介してスピーカ88に出力する。
【0270】
そして、ステップS83では、ゲーム終了かどうかを判断する。ここでは、プロセッサ81は、ミニゲームについて最終的な勝敗を決定したかどうかを判断する。ステップS83で“NO”であれば、つまり、ゲーム終了でなければ、ステップS73に戻る。一方、ステップS83で“YES”であれば、つまり、ゲーム終了であれば、図17に示したステップS1に戻る。
【0271】
また、上述したように、図18に示したステップS15で“NO”であれば、図23に示すステップS85で、個別ミニゲームプレイの選択かどうかを判断する。ここでは、プロセッサ81は、アイコン302のオンかどうかを判断する。
【0272】
ステップS85で“YES”であれば、つまり、個別ミニゲームプレイの選択であれば、ステップS87で、後述する個別ミニゲームプレイの処理(図24参照)を実行して、ステップS91に進む。一方、ステップS85で“NO”であれば、つまり、個別ミニゲームプレイの選択でなければ、ステップS89で、後述する総合テストの処理(図25参照)を実行して、ステップS91に進む。
【0273】
ステップS91では、最高スコアを更新したかどうかを判断する。ステップS91で“NO”であれば、つまり、最高スコアを更新していなければ、ステップS1に戻る。一方、ステップS91で“YES”であれば、つまり、最高スコアを更新していれば、ステップS93で、ゴーストデータを生成し、ステップS95で、ゴーストデータをサーバ202に登録するかどうかを判断する。ただし、ステップS93で生成したゴーストデータは、プレイヤデータ(ここでは、プレイヤAデータ900)に記憶される。
【0274】
ステップS95で“NO”であれば、つまり、ゴーストデータをサーバ202に登録しない場合には、ステップS1に戻る。ステップS95で“YES”であれば、ステップS97で、ゴーストデータをサーバ202に送信し、ステップS99で、ゴーストIDの取得済みであるかどうかを判断する。ここでは、プレイヤAが選択されていると仮定してあるため、ステップS99では、プロセッサ81は、プレイヤAデータ900にゴーストIDが含まれているかどうかを判断する。
【0275】
ステップS99で“YES”であれば、つまり、ゴーストIDの取得済みであれば、ステップS1に戻る。一方、ステップS99で“NO”であれば、つまり、ゴーストIDの取得済みでなければ、ステップS101で、サーバ202からゴーストIDを取得して、ステップS1に戻る。
【0276】
ただし、プロセッサ81は、マルチプレイモードの処理を実行した場合には、ステップS91-S101を各プレイヤについて個別に実行する。また、プロセッサ81は、総合テストの処理を実行した場合には、ステップS91-S101を各分野のミニゲームについて個別に実行する。ここでは、プレイヤAが選択されていると仮定してあるため、ステップS101では、プロセッサ81は、取得したゴーストIDをプレイヤAデータ900に記憶する。
【0277】
図24図23に示したステップS87の個別ミニゲームプレイの処理の限定しない一例を示すフロー図である。図24に示すように、プロセッサ81は、個別ミニゲームプレイの処理を開始すると、ステップS121で、個別ミニゲームプレイにおけるゲーム初期処理を実行する。ここでは、プロセッサ81は、分野およびミニゲームを選択し、選択したミニゲームについて、図10に示したようなゲーム画面350を据置型モニタまたはディスプレイ12に表示する。
【0278】
続くステップS123では、操作データを取得する。ここでは、プロセッサ81は、コントローラ(左コントローラ3、右コントローラ4または他のコントローラ)またはタッチパネル13からのタッチ入力についての操作データを取得する。
【0279】
次のステップS125では、プレイデータを生成する。ミニゲームのゲーム開始からの時間(フレーム数)はカウントされており、操作データを取得した場合に、プレイヤAのプレイデータ900dが生成または更新される。
【0280】
続くステップS127では、個別ミニゲームプレイにおけるミニゲームのゲーム制御処理を実行する。ここでは、プロセッサ81は、プレイヤAの操作に従ってオブジェクトを選択、移動または決定する。また、ゴースト対戦のゲーム制御処理では、プロセッサ81は、ミニゲームにおけるスコアを算出したり、各問題の正解または不正解を判断したりする。
【0281】
続いて、ステップS129では、ゲーム画像およびゲーム音声を生成する。ここでは、プロセッサ81は、ステップS127の個別ミニゲームプレイにおけるミニゲームのゲーム制御処理の結果に基づいて、ゲーム画像に対応するゲーム画像データを生成するとともに、ゲーム音声に対応する音声データを生成する。
【0282】
次のステップS131では、ゲーム画像を表示し、ゲーム音声を出力する。ここでは、プロセッサ81は、ステップS129で生成したゲーム画像データを据置型モニタまたはディスプレイ12に出力するとともに、ステップS129で生成したゲーム音声データを据置型モニタのスピーカまたはコーデック回路87を介してスピーカ88に出力する。
【0283】
そして、ステップS133では、ゲーム終了かどうかを判断する。ここでは、プロセッサ81は、ミニゲームについて最終的な勝敗を決定したかどうかを判断する。ステップS133で“NO”であれば、つまり、ゲーム終了でなければ、ステップS123に戻る。一方、ステップS133で“YES”であれば、つまり、ゲーム終了であれば、個別ミニゲームプレイの処理を終了し、図17図23に示した全体処理にリターンする。
【0284】
図25図23に示したステップS89の総合テストの処理の限定しない一例を示すフロー図である。図25に示すように、プロセッサ81は、総合テストの処理を開始すると、ステップS151で、総合テストにおけるゲーム初期処理を実行する。ここでは、プロセッサ81は、分野毎に、プレイするミニゲームを選択し、最初の分野について選択したミニゲームについてのゲーム画面を据置型モニタまたはディスプレイ12に表示する。
【0285】
ただし、この実施例の総合テストのゲームでは、複数の分野についてミニゲームをプレイする順番が予め決定されているものとする。これは一例であり、プレイヤが順番を決定してもよいし、総合テストのゲームをプレイする場合には、毎回ランダムに決定しもよい。
【0286】
続くステップS153では、操作データを取得する。ここでは、プロセッサ81は、コントローラ(左コントローラ3、右コントローラ4または他のコントローラ)またはタッチパネル13からのタッチ入力についての操作データを取得する。
【0287】
次のステップS155では、プレイデータを生成する。各ミニゲームのゲーム開始からの時間(フレーム数)はカウントされており、操作データを取得した場合に、分野毎に、プレイヤのプレイデータが生成または更新される。
【0288】
続くステップS157では、総合テストにおけるミニゲームのゲーム制御処理を実行する。ここでは、プロセッサ81は、プレイヤの操作に従って、ゲーム画面におけるオブジェクトを選択、移動または決定する。
【0289】
続いて、ステップS159では、ゲーム画像およびゲーム音声を生成する。ここでは、プロセッサ81は、ステップS157の総合テストにおけるミニゲームのゲーム制御処理の結果に基づいて、ゲーム画像に対応するゲーム画像データを生成するとともに、ゲーム音声に対応する音声データを生成する。
【0290】
次のステップS161では、ゲーム画像を表示し、ゲーム音声を出力する。ここでは、プロセッサ81は、ステップS159で生成したゲーム画像データを据置型モニタまたはディスプレイ12に出力するとともに、ステップS159で生成したゲーム音声データを据置型モニタのスピーカまたはコーデック回路87を介してスピーカ88に出力する。
【0291】
続くステップS163では、現在の分野のミニゲーム終了かどうかを判断する。ここでは、プロセッサ81は、現在の分野のミニゲームにおける最後の問題について回答したかどうかを判断する。ステップS163で“NO”であれば、つまり、現在の分野のミニゲーム終了でなければ、ステップS153に戻る。一方、ステップS163で“YES”であれば、つまり、現在の分野のミニゲーム終了であれば、ステップS165で、次の分野のミニゲームが有るかどうかを判断する。
【0292】
ステップS165で“YES”であれば、つまり、次の分野のミニゲームが有れば、ステップS167で、次の分野のミニゲームのゲーム画面を表示して、ステップS153に戻る。一方、ステップS165で“NO”であれば、つまり、すべての分野についてのミニゲームを終了し、次の分野のミニゲームが無い場合には、ステップS169で、総合テストの結果を表示して、総合テストの処理を終了し、図17図23に示した全体処理にリターンする。ステップS169では、プロセッサ81は、各分野のスコアを表示する。
【0293】
図26図17に示したステップS81のマルチプレイモードの処理の限定しない一例を示すフロー図である。図26に示すように、プロセッサ81は、マルチプレイモードの処理を開始すると、ステップS181で、マルチプレイモードにおけるゲーム初期処理を実行する。ここでは、プロセッサ81は、マルチプレイモードの処理の開始前に選択された各プレイヤおよび選択されたミニゲームについてのゲーム画面を据置型モニタまたはディスプレイ12に表示する。ただし、プロセッサ81は、複数のプレイヤがプレイして対戦するミニゲームの場合には、各プレイヤについてのゲーム画面を表示し、複数のプレイヤが協力してプレイするミニゲームの場合には、各プレイヤについて共通する1つのゲーム画面を表示する。
【0294】
続くステップS183では、操作データを取得する。ここでは、2人でプレイする場合には、プロセッサ81は、コントローラ(左コントローラ3、右コントローラ4または他のコントローラ)またはタッチパネル13からのタッチ入力についての操作データを取得する。3人以上でプレイする場合には、プロセッサ81は、コントローラ(左コントローラ3、右コントローラ4または他のコントローラ)からの操作データを取得する。
【0295】
次のステップS185では、プレイデータを生成する。ミニゲームのゲーム開始からの時間(フレーム数)はカウントされており、操作データを取得した場合に、プレイヤ毎のプレイデータが生成または更新される。
【0296】
続くステップS187では、マルチプレイモードにおけるミニゲームのゲーム制御処理を実行する。ここでは、複数のプレイヤがプレイして対戦するミニゲームの場合には、各プレイヤの操作に従って、それぞれのゲーム画面におけるオブジェクトを選択、移動または決定する。また、複数のプレイヤが協力してプレイするミニゲームの場合には、各プレイヤの操作に従って、1のゲーム画面におけるオブジェクトを選択、移動または決定する。また、マルチプレイモードにおけるミニゲームのゲーム制御処理では、プロセッサ81は、ミニゲームにおけるスコアを個別にまたは全体で算出したり、各問題の正解または不正解を個別にまたは全体で判断したりする。
【0297】
続いて、ステップS189では、ゲーム画像およびゲーム音声を生成する。ここでは、プロセッサ81は、ステップS187のマルチプレイモードにおけるミニゲームのゲーム制御処理の結果に基づいて、ゲーム画像に対応するゲーム画像データを生成するとともに、ゲーム音声に対応する音声データを生成する。ただし、複数のプレイヤがプレイして対戦するミニゲームの場合には、各プレイヤについてのゲーム画像およびゲーム音声が個別に生成される。また、複数のプレイヤが協力してプレイするミニゲームの場合には、各プレイヤで共通する1のゲーム画像およびゲーム音声が生成される。
【0298】
次のステップS191では、ゲーム画像を表示し、ゲーム音声を出力する。ここでは、プロセッサ81は、ステップS189で生成したゲーム画像データを据置型モニタまたはディスプレイ12に出力するとともに、ステップS189で生成したゲーム音声データを据置型モニタのスピーカまたはコーデック回路87を介してスピーカ88に出力する。
【0299】
そして、ステップS193では、ゲーム終了かどうかを判断する。ここでは、プロセッサ81は、ミニゲームについて最終的な勝敗(または、順位)を決定したかどうかを判断する。ステップS193で“NO”であれば、つまり、ゲーム終了でなければ、ステップS183に戻る。一方、ステップS193で“YES”であれば、つまり、ゲーム終了であれば、マルチプレイモードの処理を終了し、図17図23に示した全体処理にリターンする。
【0300】
図27図29図8に示したサーバ202に内蔵されるCPU202aのゴーストデータの登録および送信処理の限定しない一例を示すフロー図である。図28に示すように、CPU202aは、ゴーストデータの登録および送信処理を開始すると、ステップS301で、ゴーストデータの登録かどうかを判断する。ここでは、本体装置2から送信されたゴーストデータを受信したかどうかを判断する。
【0301】
ステップS301で“NO”であれば、つまり、ゴーストデータの登録でなければ、図28に示すステップS311に進む。一方、ステップS301で“YES”であれば、つまり、ゴーストデータの登録であれば、ステップS303で、初回の登録かどうかを判断する。ここでは、CPU202aは、ゴーストデータに含まれるプレイヤ名のプレイヤに対してゴーストIDを付与しているかどうかを判断する。
【0302】
ステップS303で“NO”であれば、つまり、初回の登録でなければ、ステップS309に進む。ステップS303で“YES”であれば、つまり、初回の登録であれば、ステップS305で、ゴーストデータに含まれるプレイヤ名のプレイヤに対してゴーストIDを発行する。
【0303】
続くステップS307では、ステップS305で発行したゴーストIDをゴーストデータの送信元の本体装置2に送信して、ステップS309に進む。ステップS309では、ゴーストデータをゴーストIDに紐づけてHDD202cに記憶する。ここでは、CPU202aは、ゴーストデータIDを発行し、ゴーストIDにゴーストデータIDを紐づけるとともに、ゴーストデータにゴーストデータIDを付加してHDD202cに記憶する。
【0304】
図28に示すように、次のステップS311では、コントローラで操作したゴーストの情報の送信要求が有るかどうかを判断する。ステップS311で“YES”であれば、つまり、コントローラで操作したゴーストの情報の送信要求が有れば、ステップS313で、管理するゴーストデータの中から、コントローラで操作したゴーストデータを複数個(この実施例では、7個)選出して、ステップS327に進む。上述したように、ステップS313では、CPU202aは、日付の新しいゴーストデータから優先的に選択する。このことは、ステップS317についても同じである。
【0305】
一方、ステップS311で“NO”であれば、つまり、コントローラで操作したゴーストの情報の送信要求が無ければ、ステップS315で、任意のゴーストの情報の送信要求が有るかどうかを判断する。ステップS315で“YES”であれば、つまり、任意のゴーストの情報の送信要求が有れば、ステップS317で、管理するゴーストデータの中から、任意のゴーストデータを複数個(この実施例では、7個)選出して、ステップS327に進む。
【0306】
一方、ステップS315で“NO”であれば、つまり、任意のゴーストの情報の送信要求が無ければ、ステップS319で、ともだちのゴーストの情報の送信要求が有るかどうかを判断する。ステップS319で“YES”であれば、つまり、ともだちのゴーストの情報の送信要求が有れば、ステップS321で、管理するゴーストデータの中から、フレンドのプレイヤのゴーストデータを複数個(この実施例では、最大7個)選出して、ステップS327に進む。ただし、フレンドのプレイヤは、ともだちのゴーストの情報の送信要求に付加されたフレンド識別情報が示すフレンドのプレイヤである。
【0307】
一方、ステップS319で“NO”であれば、つまり、ともだちのゴーストの情報の送信要求が無ければ、ステップS323で、特定のゴーストの情報の送信要求が有るかどうかを判断する。ステップS323で“NO”であれば、つまり、特定のゴーストの情報の送信要求が無ければ、図29に示すステップS329に進む。
【0308】
一方、ステップS323で“YES”であれば、つまり、特定のゴーストの情報の送信要求が有れば、ステップS325で、管理するゴーストデータの中から、特定のゴーストデータの送信要求に付加されたゴーストIDに紐づけられた1または複数のゴーストデータを選出して、ステップS327に進む。
【0309】
ステップS327では、選出した1または複数個のゴーストデータに含まれるゴーストの情報を、ゴーストの情報の要求元の本体装置2に送信して、ステップS329に進む。ただし、各ゴーストの情報には、ゴーストデータIDが付加されている。
【0310】
図29に示すように、ステップS329では、ゴーストデータの送信要求が有るかどうかを判断する。ステップS329で“NO”であれば、つまり、ゴーストデータの送信要求が無ければ、図27に示したステップS301に戻る。一方、ステップS329で“YES”であれば、つまり、ゴーストデータの送信要求が有れば、ステップS331で、要求されたゴーストデータを要求元の本体装置2に送信して、ステップS301に戻る。上述したよう、ステップS301では、CPU202aは、ゴーストデータの送信要求に付加されたゴーストデータIDが示すゴーストデータを要求元の本体装置2送信する。
【0311】
この実施例によれば、タッチ操作することができないまたはタッチ操作しないプレイヤに対しては、タッチ操作したプレイデータを含むゴーストデータを選出しないので、プレイヤが不利な状況でゴーストと対戦することを回避することができる。つまり、プレイヤのプレイ状態に応じて適切なゴーストを選出することができる。
【0312】
なお、この実施例では、ゴースト対戦でミニゲームをプレイする場合を除いて、最高スコアを更新すると、自動的にゴーストデータを生成するようにしたが、最高スコアを更新しなくても、プレイヤの操作に従ってゴーストデータが生成されてもよい。
【0313】
また、この実施例では、ともだちのゴーストデータをサーバから取得するようにしたが、これに限定される必要はない。ともだちのゴーストデータは、フレンドのプレイヤの本体装置2から送信されたゴーストデータを受信して取得するようにしてもよいし、外部の記憶媒体(たとえば、SDカードまたはamiibo(登録商標))に記憶されたゴーストデータをプレイヤの本体装置2で読み込んで取得してもよい。
【0314】
さらに、この実施例では、世界のゴースト、ともだちのゴーストおよび特定のゴーストについてはサーバが選出するようにしたが、これに限定される必要はない。本体装置にサーバから所定数(たとえば、数百個)のゴーストデータを予め配信しておき、本体装置でゴーストデータを選出するようにしてもよい。この場合、本体装置は、外部の記憶媒体(たとえば、SDカードまたはamiibo(登録商標))に記憶された所定数のゴーストデータを取得しておいてもよい。
【0315】
さらにまた、この実施例では、世界のゴースト、ともだちのゴーストおよび特定のゴーストについての選択画面を表示する場合には、サーバからゴーストの情報を取得し、対戦相手のゴーストが決定された場合に、サーバからゴーストデータを取得するようにしたが、これに限定される必要はない。世界のゴースト、ともだちのゴーストおよび特定のゴーストについての選択画面を表示する場合に、サーバからゴーストデータを取得しておき、取得したゴーストデータに含まれるゴーストの情報を用いて選択画面を表示し、対戦相手として決定されたゴーストデータに含まれるプレイデータを用いて対戦するようにしてもよい。
【0316】
また、この実施例では、タッチフラグがオフのゴーストを選出する場合、サーバ202に対してタッチフラグがオフのゴーストを選出するように要求が行われたが、これに限定される必要はない。例えば、サーバ202にゴーストを選出するように要求する際にはタッチフラグの有無にかかわらず、表示数(例えば7個)よりも多い数のゴーストを選出し、そのゴーストを受信した本体装置2においてタッチフラグがオフのゴーストのみを選出して表示するようにしてもよい。このようにすることで、ゴーストを入れ替えて再表示するときなどにサーバ202からの再度のダウンロードが不要となるため、再表示にかかる時間を減らすことができる。また、ゴーストのカードオブジェクトが表示された後でプレイモードが変更された場合であっても、プレイモードに合わせたゴーストの再表示を即座に行うことが可能となる。
【0317】
また、この実施例では、一部のミニゲームについては、ボタン操作のみでプレイするゲームと、タッチ操作のみでプレイするゲームの2種類が用意され、ミニゲームをプレイする前にいずれかの種類を選択するようにしたが、これに限定される必要はない。一部のミニゲーム以外のミニゲームについても、プレイヤがタッチ操作のみでプレイするか、ボタン操作のみでプレイするかを選択するようにしてもよい。その場合、プレイデータに、タッチ操作のみでプレイしたことまたはボタン操作のみでプレイしたことを識別可能な識別情報を付加しておき、一部のミニゲームをタッチ操作のみまたはボタン操作のみでプレイしたゴーストと同様に選出するようにしてもよい。
【0318】
また、この実施例では、ゲームシステムの一例としてゲームシステム1を示したが、その構成は限定される必要は無く、他の構成を採用することが可能である。たとえば、上記「コンピュータ」は、上述の実施例においては、1つのコンピュータ(具体的には、プロセッサ81)であるが、他の実施例においては、複数のコンピュータであってもよい。上記「コンピュータ」は、例えば、複数の装置に設けられる(複数の)コンピュータであってもよく、より具体的には、上記「コンピュータ」は、本体装置2のプロセッサ81と、コントローラが備える通信制御部(マイクロプロセッサ)101、111とによって構成されてもよい。
【0319】
また、この実施例では、本体装置2がネットワーク204を介してサーバ202に接続される場合について示してあるが、ゲーム装置は本体装置2に限定される必要はない。この実施例のゲームアプリケーションにおけるミニゲームをプレイできる他のゲーム装置、スマートフォンおよびPC(タブレットPC、ラップトップPCまたは据置型PC)などがネットワーク204を介してサーバ202に接続されてもよい。本体装置2以外の他のゲーム装置等が接続される場合には、タッチ入力できない場合をTVモードとして扱い、タッチ入力可能な入力装置以外の入力装置(たとえば、ハードウェアまたはソフトウェアのキーボードまたは/およびコンピュータマウス)による入力をコントローラによる入力として扱えばよい。
【0320】
したがって、ゴーストデータは、本体装置でプレイしたプレイデータを含むゴーストデータに限定される必要はない。なお、コンピュータマウスは、タッチパネルと同じポインティングデバイスであるが、カーソルオブジェクトを移動する操作と、風船オブジェクトを割ることを決定する操作が必要であるため、上記のコントローラおよびキーボードと同様の操作が必要である。
【0321】
さらに、この実施例では、本体装置2に左コントローラ3および右コントローラ4を着脱可能な構成のゲームシステム1を用いた場合について説明したが、これに限定される必要はない。たとえば、左コントローラ3および右コントローラ4と同様の操作ボタンおよびアナログスティックを有する操作部を本体装置2に一体的に設けたゲーム装置またはゲームプログラムを実行可能な他の電子機器のようなゲーム装置を用いることもできる。他の電子機器としては、スマートフォンまたはタブレットPCなどが該当する。かかる場合には、操作部はソフトウェアキーで構成することもできる。
【0322】
さらにまた、この実施例で示した具体的な数値および画像は一例であり、実際の製品に応じて適宜変更可能である。
【符号の説明】
【0323】
1 …ゲームシステム
2 …本体装置
3 …左コントローラ
4 …右コントローラ
32、52 …アナログスティック
39 …ZLボタン
60 …Rボタン
61 …ZRボタン
81 …プロセッサ
200 …情報処理システム
202 …サーバ
204 …ネットワーク
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29