(57)【要約】【課題】チーム編成がなされるゲームにおけるユーザの興趣性を高めることを可能とする情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法を提供する。【解決手段】複数のユーザからなるチームを少なくとも１つ含むチーム編成を設定し、当該チームに属する少なくとも１人のユーザによりプレイされる第１ゲームを実行する。そして、第１ゲーム開始前、第１ゲーム中断時、および第１ゲーム終了後の少なくともいずれかにおいて、コントローラを動かす操作をチームのユーザに促す第１通知および第２通知を行い、チームに属するユーザが操作する少なくとも１つのコントローラにおいて、操作が行われて成功条件が満たされた場合に、所定のゲーム演出を行う。【選択図】図１１
2019208896.tif 000002
【特許請求の範囲】
【請求項１】
慣性センサを備えるコントローラを用いた処理を行う情報処理装置に含まれるコンピュータで実行される情報処理プログラムであって、
前記コンピュータを、
複数のユーザからなるチームを少なくとも１つ含むチーム編成を設定し、当該チームに属する少なくとも１人のユーザによりプレイされる第１ゲームを実行する第１ゲーム実行手段と、
前記第１ゲーム開始前、前記第１ゲーム中断時、および前記第１ゲーム終了後の少なくともいずれかにおいて、前記コントローラを動かす操作を前記チームのユーザに促す第１通知を、画像および音の少なくとも一方により行うための信号を出力する第１通知手段と、
前記チームに属するユーザが操作する前記コントローラに対して、当該コントローラに接触する接触体を刺激する第２通知を前記第１通知とともに行うための信号を出力する第２通知手段と、
前記チームに属するユーザが操作する少なくとも１つの前記コントローラにおいて、前記操作が行われたか否かの判定を行う操作判定手段と、
前記判定に基づいて、成功条件が満たされたか否かを判定する成功判定手段と、
前記成功条件が満たされたと判定された場合に、所定のゲーム演出を行うゲーム演出手段として機能させる、情報処理プログラム。
【請求項２】
前記第１ゲームとは別の第２ゲームを実行する第２ゲーム実行手段として、さらに前記コンピュータを機能させ、
前記第１ゲーム実行手段は、前記第２ゲームの途中において前記第１ゲームを実行する、請求項１に記載の情報処理プログラム。
【請求項３】
前記第１ゲームの結果が影響を与える第２ゲームを実行する第２ゲーム実行手段として、さらに前記コンピュータを機能させる、請求項１に記載の情報処理プログラム。
【請求項４】
前記ゲーム演出手段は、前記第１ゲーム終了後に前記成功条件が満たされたと判定された場合、前記チームまたは当該チームに属するユーザに対して、前記第２ゲームにおける有利な効果を付与する、請求項２または３に記載の情報処理プログラム。
【請求項５】
前記ゲーム演出手段は、前記有利な効果として、前記第２ゲームで用いられるゲームパラメータの増減を行う、請求項４に記載の情報処理プログラム。
【請求項６】
前記ゲーム演出手段は、前記有利な効果として、前記第２ゲームが終了するまでの残り時間を増加させる、請求項５に記載の情報処理プログラム。
【請求項７】
前記ゲーム演出手段は、前記第１ゲーム開始前に前記成功条件が満たされたと判定された場合、前記チームまたは当該チームに属するユーザに対して、当該第１ゲームにおける有利な効果を付与する、請求項１乃至３の何れか１つに記載の情報処理プログラム。
【請求項８】
前記ゲーム演出手段は、前記第１ゲーム中断時に前記成功条件が満たされたと判定された場合、前記チームまたは当該チームに属するユーザに対して、当該第１ゲームにおける有利な効果を付与する、請求項１乃至３の何れか１つに記載の情報処理プログラム。
【請求項９】
前記第１ゲーム実行手段は、複数のチームが対戦するゲームを前記第１ゲームとして実行し、
前記第２通知手段は、前記第１ゲームにおいて勝利したまたは前記第１ゲームにおいて所定の成果をあげたチームに対して、前記第２通知を行う、請求項１乃至８の何れか１つに記載の情報処理プログラム。
【請求項１０】
前記成功判定手段は、前記チームに属するユーザ全員がそれぞれ操作する前記コントローラ全てにおいて、前記操作が行われたと判定された場合に、前記成功条件が満たされたと判定する、請求項１乃至９の何れか１つに記載の情報処理プログラム。
【請求項１１】
前記成功判定手段は、前記チームに属する複数のユーザがそれぞれ操作する前記コントローラにおいて、前記操作が同じタイミングで行われた場合に、前記成功条件が満たされたと判定する、請求項１乃至１０の何れか１つに記載の情報処理プログラム。
【請求項１２】
前記操作判定手段は、前記第１通知が通知されてから閾時間内に、前記成功条件が満たされたと判定されなかった場合、前記操作が行われたか否かを判定する処理を終了する、請求項１乃至１１の何れか１つに記載の情報処理プログラム。
【請求項１３】
前記第１通知手段は、前記第１通知を複数回行い、
前記第２通知手段は、前記第１通知が通知されるタイミングに合わせて、前記第２通知を行う、請求項１乃至１２の何れか１つに記載の情報処理プログラム。
【請求項１４】
前記ゲーム演出手段は、前記第１ゲームに登場する前記ユーザが操作するキャラクタが前記操作に対応する動きを行う演出を、前記所定のゲーム演出として行う、請求項１乃至１３の何れか１つに記載の情報処理プログラム。
【請求項１５】
慣性センサを備えるコントローラを用いた処理を行う情報処理装置であって、
複数のユーザからなるチームを少なくとも１つ含むチーム編成を設定し、当該チームに属する少なくとも１人のユーザによりプレイされる第１ゲームを実行する第１ゲーム実行手段と、
前記第１ゲーム開始前、前記第１ゲーム中断時、および前記第１ゲーム終了後の少なくともいずれかにおいて、前記コントローラを動かす操作を前記チームのユーザに促す第１通知を、画像および音の少なくとも一方により行うための信号を出力する第１通知手段と、
前記チームに属するユーザが操作する前記コントローラに対して、当該コントローラに接触する接触体を刺激する第２通知を前記第１通知とともに行うための信号を出力する第２通知手段と、
前記チームに属するユーザが操作する少なくとも１つの前記コントローラにおいて、前記操作が行われたか否かの判定を行う操作判定手段と、
前記判定に基づいて、成功条件が満たされたか否かを判定する成功判定手段と、
前記成功条件が満たされたと判定された場合に、所定のゲーム演出を行うゲーム演出手段とを備える、情報処理装置。
【請求項１６】
慣性センサを備えるコントローラと当該コントローラを用いた処理を行う情報処理装置とを含む情報処理システムあって、
前記情報処理装置は、
複数のユーザからなるチームを少なくとも１つ含むチーム編成を設定し、当該チームに属する少なくとも１人のユーザによりプレイされる第１ゲームを実行する第１ゲーム実行手段と、
前記第１ゲーム開始前、前記第１ゲーム中断時、および前記第１ゲーム終了後の少なくともいずれかにおいて、前記コントローラを動かす操作を前記チームのユーザに促す第１通知を、画像および音の少なくとも一方により行うための信号を出力する第１通知手段と、
前記チームに属するユーザが操作する前記コントローラに対して、当該コントローラに接触する接触体を刺激する第２通知を前記第１通知とともに行うための信号を出力する第２通知手段と、
前記チームに属するユーザが操作する少なくとも１つの前記コントローラにおいて、前記操作が行われたか否かの判定を行う操作判定手段と、
前記判定に基づいて、成功条件が満たされたか否かを判定する成功判定手段と、
前記成功条件が満たされたと判定された場合に、所定のゲーム演出を行うゲーム演出手段とを備える、情報処理システム。
【請求項１７】
慣性センサを備えるコントローラを用いた処理を行う情報処理方法であって、
複数のユーザからなるチームを少なくとも１つ含むチーム編成を設定し、当該チームに属する少なくとも１人のユーザによりプレイされる第１ゲームを実行する第１ゲーム実行ステップと、
前記第１ゲーム開始前、前記第１ゲーム中断時、および前記第１ゲーム終了後の少なくともいずれかにおいて、前記コントローラを動かす操作を前記チームのユーザに促す第１通知を、画像および音の少なくとも一方により行うための信号を出力する第１通知ステップと、
前記チームに属するユーザが操作する前記コントローラに対して、当該コントローラに接触する接触体を刺激する第２通知を前記第１通知とともに行うための信号を出力する第２通知ステップと、
前記チームに属するユーザが操作する少なくとも１つの前記コントローラにおいて、前記操作が行われたか否かの判定を行う操作判定ステップと、
前記判定に基づいて、成功条件が満たされたか否かを判定する成功判定ステップと、
前記成功条件が満たされたと判定された場合に、所定のゲーム演出を行うゲーム演出ステップとを含む、情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コントローラを用いた操作に応じた処理を行う情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法に関する。
【背景技術】
【０００２】
従来、複数のユーザがコントローラを操作してチーム対抗のゲームを行うゲームシステムがある（例えば、非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】”Ｍａｒｉｏ  Ｐａｒｔｙ  ８  ｆｏｒ  Ｗｉｉ  −Ｎｉｎｔｅｎｄｏ  Ｇａｍｅ  Ｄｅｔａｉｌｓ“、［ｏｎｌｉｎｅ］、Ｎｉｎｔｅｎｄｏ  ｏｆ  Ａｍｅｒｉｃａ  Ｉｎｃ、［平成３０年５月８日検索］、インターネット（URL：https://www.nintendo.com/sites/mp8/）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記非特許文献１で開示されたゲームシステムでは、チーム編成がなされるゲームにおけるユーザの興趣性を高めることについてさらなる改良の余地がある。
【０００５】
それ故に、本発明の目的は、チーム編成がなされるゲームにおけるユーザの興趣性を高めることを可能とする情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法を提供することである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明は例えば以下のような構成を採用し得る。なお、特許請求の範囲の記載を解釈する際に、特許請求の範囲の記載によってのみその範囲が解釈されるべきであることが理解され、特許請求の範囲の記載と本欄の記載とが矛盾する場合には、特許請求の範囲の記載が優先する。
【０００７】
本発明の情報処理プログラムの一構成例は、慣性センサを備えるコントローラを用いた処理を行う情報処理装置に含まれるコンピュータで実行される。情報処理プログラムは、第１ゲーム実行手段、第１通知手段、第２通知手段、操作判定手段、成功判定手段、およびゲーム演出手段として、コンピュータを機能させる。第１ゲーム実行手段は、複数のユーザからなるチームを少なくとも１つ含むチーム編成を設定し、当該チームに属する少なくとも１人のユーザによりプレイされる第１ゲームを実行する。第１通知手段は、第１ゲーム開始前、第１ゲーム中断時、および第１ゲーム終了後の少なくともいずれかにおいて、コントローラを動かす操作をチームのユーザに促す第１通知を、画像および音の少なくとも一方により行うための信号を出力する。第２通知手段は、チームに属するユーザが操作するコントローラに対して、当該コントローラに接触する接触体を刺激する第２通知を第１通知とともに行うための信号を出力する。操作判定手段は、チームに属するユーザが操作する少なくとも１つのコントローラにおいて、操作が行われたか否かの判定を行う。成功判定手段は、判定に基づいて、成功条件が満たされたか否かを判定する。ゲーム演出手段は、成功条件が満たされたと判定された場合に、所定のゲーム演出を行う。
【０００８】
上記によれば、複数のユーザからなるチームに属するユーザが操作を行うことによって、所定のゲーム演出が行われるため、チーム編成がなされるゲームにおけるユーザの興趣性を高めることができる。また、上記操作は、画像および音声の少なくとも一方だけでなく、コントローラからの刺激によっても促されるため、ユーザが上記操作を行うことを確実に認識することができる。
【０００９】
また、上記情報処理プログラムは、第２ゲーム実行手段として、さらにコンピュータを機能させてもよい。第２ゲーム実行手段は、第１ゲームとは別の第２ゲームを実行する。この場合、上記第１ゲーム実行手段は、第２ゲームの途中において第１ゲームを実行してもよい。
【００１０】
上記によれば、第２ゲームの途中で第１ゲームが行われるとともに、当該第１ゲーム中断時または前後に操作を促す通知や当該操作に応じたゲーム演出が行われるため、バリエーションに富んだゲーム進行を楽しむことができる。
【００１１】
また、上記情報処理プログラムは、第２ゲーム実行手段として、さらにコンピュータを機能させてもよい。第２ゲーム実行手段は、第１ゲームの結果が影響を与える第２ゲームを実行する。
【００１２】
上記によれば、第１ゲームの結果が影響を与える第２ゲームが行われるとともに、当該第１のゲーム中断時または前後に操作を促す通知や当該操作に応じたゲーム演出が行われるため、バリエーションに富んだゲーム進行を楽しむことができる。
【００１３】
また、上記ゲーム演出手段は、第１ゲーム終了後に成功条件が満たされたと判定された場合、チームまたは当該チームに属するユーザに対して、第２ゲームにおける有利な効果を付与してもよい。
【００１４】
上記によれば、操作の成功条件を満たした場合に、当該操作を行ったチームが第２ゲームを有利に進めることができるため、操作を行う目的意識を高めることができる。
【００１５】
また、上記ゲーム演出手段は、有利な効果として、第２ゲームで用いられるゲームパラメータの増減を行ってもよい。
【００１６】
上記によれば、操作の成功条件を満たした場合に、第２ゲームで用いられるゲームパラメータの増減によって第２ゲームを有利に進めることができるため、操作を行う目的意識を高めることができる。
【００１７】
また、上記ゲーム演出手段は、有利な効果として、第２ゲームが終了するまでの残り時間を増加させてもよい。
【００１８】
上記によれば、時間制限がある第２ゲームにおける当該時間制限が緩和されるため、操作を行ったことによって得られる有利な効果を実感することができる。
【００１９】
また、上記ゲーム演出手段は、第１ゲーム開始前に成功条件が満たされたと判定された場合、チームまたは当該チームに属するユーザに対して、当該第１ゲームにおける有利な効果を付与してもよい。
【００２０】
上記によれば、操作の成功条件を満たした場合に、当該操作を行ったチームが第１ゲームを有利に進めることができるため、操作を行う目的意識を高めることができる。
【００２１】
また、上記ゲーム演出手段は、第１ゲーム中断時に成功条件が満たされたと判定された場合、チームまたは当該チームに属するユーザに対して、当該第１ゲームにおける有利な効果を付与してもよい。
【００２２】
上記によれば、操作の成功条件を満たした場合に、当該操作を行ったチームが第１ゲームを有利に進めることができるため、操作を行う目的意識を高めることができる。
【００２３】
また、上記第１ゲーム実行手段は、複数のチームが対戦するゲームを第１ゲームとして実行してもよい。上記第２通知手段は、第１ゲームにおいて勝利したまたは第１ゲームにおいて所定の成果をあげたチームに対して、第２通知を行ってもよい。
【００２４】
上記によれば、第１ゲームの結果が好成績である場合に操作を行う権利が得られるため、第１ゲームを行う目的意識を高めることができる。
【００２５】
また、上記成功判定手段は、チームに属するユーザ全員がそれぞれ操作するコントローラ全てにおいて、操作が行われたと判定された場合に、成功条件が満たされたと判定してもよい。
【００２６】
上記によれば、
【００２７】
また、上記成功判定手段は、チームに属する複数のユーザがそれぞれ操作するコントローラにおいて、操作が同じタイミングで行われた場合に、成功条件が満たされたと判定してもよい。
【００２８】
上記によれば、チームに属する複数のユーザ全員が操作を同じタイミングで行うことが要求されるため、当該複数のユーザ間の連帯感を高めることができる。
【００２９】
また、上記操作判定手段は、第１通知が通知されてから閾時間内に、成功条件が満たされたと判定されなかった場合、操作が行われたか否かを判定する処理を終了してもよい。
【００３０】
上記によれば、操作を成功させるためには第１通知が通知されてから閾時間内に当該操作を行う必要があり、当該閾時間終了後は他の処理に移行することが可能となるため、操作が行われないまま処理が進まなくなることを防止することができる。
【００３１】
また、上記第１通知手段は、第１通知を複数回行ってもよい。上記第２通知手段は、第１通知が通知されるタイミングに合わせて、第２通知を行ってもよい。
【００３２】
上記によれば、操作が促されていることをユーザにより気づかせることができる。
【００３３】
また、上記ゲーム演出手段は、第１ゲームに登場するユーザが操作するキャラクタが操作に対応する動きを行う演出を、所定のゲーム演出として行ってもよい。
【００３４】
上記によれば、操作が成功したことに対するユーザの高揚感を高めることができる。
【００３５】
また、本発明は、情報処理装置、情報処理システム、および情報処理方法の形態で実施されてもよい。
【発明の効果】
【００３６】
本発明によれば、複数のユーザからなるチームに属するユーザが操作を行うことによって、所定のゲーム演出が行われるため、チーム編成がなされるゲームにおけるユーザの興趣性を高めることができる。
【図面の簡単な説明】
【００３７】
【図１】本実施形態におけるゲームシステム１の一例において、本体装置２に左コントローラ３および右コントローラ４を装着した状態を示す図
【図２】本体装置２から左コントローラ３および右コントローラ４をそれぞれ外した状態の一例を示す図
【図３】本体装置２の一例を示す六面図
【図４】左コントローラ３の一例を示す六面図
【図５】右コントローラ４の一例を示す六面図
【図６】本体装置２の内部構成の一例を示すブロック図
【図７】ゲームシステム１の内部構成の一例を示すブロック図
【図８】左コントローラ３または右コントローラ４を操作してプレイするゲームにおいて表示されるゲーム画像例
【図９】左コントローラ３または右コントローラ４を操作してプレイするゲームにおいて表示されるゲーム画像例
【図１０】左コントローラ３または右コントローラ４を操作してプレイするゲームにおいて表示されるゲーム画像例
【図１１】左コントローラ３または右コントローラ４を操作してプレイするゲームにおいて表示されるゲーム画像例
【図１２】左コントローラ３または右コントローラ４を操作してプレイするゲームにおいて表示されるゲーム画像例
【図１３】左コントローラ３または右コントローラ４を操作してプレイするゲームにおいて表示されるゲーム画像例
【図１４】左コントローラ３または右コントローラ４を操作してプレイするゲームにおいて表示されるゲーム画像例
【図１５】本実施形態において本体装置２のＤＲＡＭ８５に設定されるデータ領域の一例を示す図
【図１６】ゲームシステム１で実行されるゲーム処理の一例を示すフローチャート
【図１７】図１６におけるステップＳ１２６において行われるメインゲーム処理の詳細の一例を示すサブルーチン
【図１８】図１６におけるステップＳ１２７において行われるサブゲーム処理の前半の詳細の一例を示すサブルーチン
【図１９】図１６におけるステップＳ１２７において行われるサブゲーム処理の後半の詳細の一例を示すサブルーチン
【発明を実施するための形態】
【００３８】
以下、本実施形態の一例に係るゲームシステムについて説明する。本実施形態におけるゲームシステム１の一例は、本体装置（情報処理装置；本実施形態ではゲーム装置本体として機能する）２と左コントローラ３および右コントローラ４とを含む。本体装置２は、左コントローラ３および右コントローラ４がそれぞれ着脱可能である。つまり、ゲームシステム１は、左コントローラ３および右コントローラ４をそれぞれ本体装置２に装着して一体化された装置として利用できる。また、ゲームシステム１は、本体装置２と左コントローラ３および右コントローラ４とを別体として利用することもできる（図２参照）。以下では、本実施形態のゲームシステム１のハードウェア構成について説明し、その後に本実施形態のゲームシステム１の制御について説明する。
【００３９】
図１は、本体装置２に左コントローラ３および右コントローラ４を装着した状態の一例を示す図である。図１に示すように、左コントローラ３および右コントローラ４は、それぞれ本体装置２に装着されて一体化されている。本体装置２は、ゲームシステム１における各種の処理（例えば、ゲーム処理）を実行する装置である。本体装置２は、ディスプレイ１２を備える。左コントローラ３および右コントローラ４は、ユーザが入力を行うための操作部を備える装置である。
【００４０】
図２は、本体装置２から左コントローラ３および右コントローラ４をそれぞれ外した状態の一例を示す図である。図１および図２に示すように、左コントローラ３および右コントローラ４は、本体装置２に着脱可能である。なお、以下において、左コントローラ３および右コントローラ４の総称として「コントローラ」と記載することがある。
【００４１】
図３は、本体装置２の一例を示す六面図である。図３に示すように、本体装置２は、略板状のハウジング１１を備える。本実施形態において、ハウジング１１の主面（換言すれば、表側の面、すなわち、ディスプレイ１２が設けられる面）は、大略的には矩形形状である。
【００４２】
なお、ハウジング１１の形状および大きさは、任意である。一例として、ハウジング１１は、携帯可能な大きさであってよい。また、本体装置２単体または本体装置２に左コントローラ３および右コントローラ４が装着された一体型装置は、携帯型装置となってもよい。また、本体装置２または一体型装置が手持ち型の装置となってもよい。また、本体装置２または一体型装置が可搬型装置となってもよい。
【００４３】
図３に示すように、本体装置２は、ハウジング１１の主面に設けられるディスプレイ１２を備える。ディスプレイ１２は、本体装置２が生成した画像を表示する。本実施形態においては、ディスプレイ１２は、液晶表示装置（ＬＣＤ）とする。ただし、ディスプレイ１２は任意の種類の表示装置であってよい。
【００４４】
また、本体装置２は、ディスプレイ１２の画面上にタッチパネル１３を備える。本実施形態においては、タッチパネル１３は、マルチタッチ入力が可能な方式（例えば、静電容量方式）のものである。ただし、タッチパネル１３は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式（例えば、抵抗膜方式）のものであってもよい。
【００４５】
本体装置２は、ハウジング１１の内部においてスピーカ（すなわち、図６に示すスピーカ８８）を備えている。図３に示すように、ハウジング１１の主面には、スピーカ孔１１ａおよび１１ｂが形成される。そして、スピーカ８８の出力音は、これらのスピーカ孔１１ａおよび１１ｂからそれぞれ出力される。
【００４６】
また、本体装置２は、本体装置２が左コントローラ３と有線通信を行うための端子である左側端子１７と、本体装置２が右コントローラ４と有線通信を行うための右側端子２１を備える。
【００４７】
図３に示すように、本体装置２は、スロット２３を備える。スロット２３は、ハウジング１１の上側面に設けられる。スロット２３は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム１およびそれと同種の情報処理装置に専用の記憶媒体（例えば、専用メモリカード）である。所定の種類の記憶媒体は、例えば、本体装置２で利用されるデータ（例えば、アプリケーションのセーブデータ等）、および／または、本体装置２で実行されるプログラム（例えば、アプリケーションのプログラム等）を記憶するために用いられる。また、本体装置２は、電源ボタン２８を備える。
【００４８】
本体装置２は、下側端子２７を備える。下側端子２７は、本体装置２がクレードルと通信を行うための端子である。本実施形態において、下側端子２７は、ＵＳＢコネクタ（より具体的には、メス側コネクタ）である。上記一体型装置または本体装置２単体をクレードルに載置した場合、ゲームシステム１は、本体装置２が生成して出力する画像を据置型モニタに表示することができる。また、本実施形態においては、クレードルは、載置された上記一体型装置または本体装置２単体を充電する機能を有する。また、クレードルは、ハブ装置（具体的には、ＵＳＢハブ）の機能を有する。
【００４９】
図４は、左コントローラ３の一例を示す六面図である。図４に示すように、左コントローラ３は、ハウジング３１を備える。本実施形態においては、ハウジング３１は、縦長の形状、すなわち、上下方向（すなわち、図１および図４に示すｙ軸方向）に長い形状である。左コントローラ３は、本体装置２から外された状態において、縦長となる向きで把持されることも可能である。ハウジング３１は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ３は、横長となる向きで把持されることも可能である。左コントローラ３が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【００５０】
左コントローラ３は、アナログスティック３２を備える。図４に示すように、アナログスティック３２は、ハウジング３１の主面に設けられる。アナログスティック３２は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック３２を傾倒することによって傾倒方向に応じた方向の入力（および、傾倒した角度に応じた大きさの入力）が可能である。なお、左コントローラ３は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック３２を押下する入力が可能である。
【００５１】
左コントローラ３は、各種操作ボタンを備える。左コントローラ３は、ハウジング３１の主面上に４つの操作ボタン３３〜３６（具体的には、右方向ボタン３３、下方向ボタン３４、上方向ボタン３５、および左方向ボタン３６）を備える。さらに、左コントローラ３は、録画ボタン３７および−（マイナス）ボタン４７を備える。左コントローラ３は、ハウジング３１の側面の左上に第１Ｌボタン３８およびＺＬボタン３９を備える。また、左コントローラ３は、ハウジング３１の側面の、本体装置２に装着される際に装着される側の面に第２Ｌボタン４３および第２Ｒボタン４４を備える。これらの操作ボタンは、本体装置２で実行される各種プログラム（例えば、ＯＳプログラムやアプリケーションプログラム）に応じた指示を行うために用いられる。
【００５２】
また、左コントローラ３は、左コントローラ３が本体装置２と有線通信を行うための端子４２を備える。
【００５３】
図５は、右コントローラ４の一例を示す六面図である。図５に示すように、右コントローラ４は、ハウジング５１を備える。本実施形態においては、ハウジング５１は、縦長の形状、すなわち、上下方向に長い形状である。右コントローラ４は、本体装置２から外された状態において、縦長となる向きで把持されることも可能である。ハウジング５１は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ４は、横長となる向きで把持されることも可能である。右コントローラ４が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【００５４】
右コントローラ４は、左コントローラ３と同様、方向入力部としてアナログスティック５２を備える。本実施形態においては、アナログスティック５２は、左コントローラ３のアナログスティック３２と同じ構成である。また、右コントローラ４は、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、右コントローラ４は、左コントローラ３と同様、ハウジング５１の主面上に４つの操作ボタン５３〜５６（具体的には、Ａボタン５３、Ｂボタン５４、Ｘボタン５５、およびＹボタン５６）を備える。さらに、右コントローラ４は、＋（プラス）ボタン５７およびホームボタン５８を備える。また、右コントローラ４は、ハウジング５１の側面の右上に第１Ｒボタン６０およびＺＲボタン６１を備える。また、右コントローラ４は、左コントローラ３と同様、第２Ｌボタン６５および第２Ｒボタン６６を備える。
【００５５】
また、右コントローラ４は、右コントローラ４が本体装置２と有線通信を行うための端子６４を備える。
【００５６】
図６は、本体装置２の内部構成の一例を示すブロック図である。本体装置２は、図３に示す構成の他、図６に示す各構成要素８１〜９１、９７、および９８を備える。これらの構成要素８１〜９１、９７、および９８のいくつかは、電子部品として電子回路基板上に実装されてハウジング１１内に収納されてもよい。
【００５７】
本体装置２は、プロセッサ８１を備える。プロセッサ８１は、本体装置２において実行される各種の情報処理を実行する情報処理部であって、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）のみから構成されてもよいし、ＣＰＵ機能、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）機能等の複数の機能を含むＳｏＣ（Ｓｙｓｔｅｍ−ｏｎ−ａ−ｃｈｉｐ）から構成されてもよい。プロセッサ８１は、記憶部（具体的には、フラッシュメモリ８４等の内部記憶媒体、あるいは、スロット２３に装着される外部記憶媒体等）に記憶される情報処理プログラム（例えば、ゲームプログラム）を実行することによって、各種の情報処理を実行する。
【００５８】
本体装置２は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ８４およびＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）８５を備える。フラッシュメモリ８４およびＤＲＡＭ８５は、プロセッサ８１に接続される。フラッシュメモリ８４は、主に、本体装置２に保存される各種のデータ（プログラムであってもよい）を記憶するために用いられるメモリである。ＤＲＡＭ８５は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【００５９】
本体装置２は、スロットインターフェース（以下、「Ｉ／Ｆ」と略記する。）９１を備える。スロットＩ／Ｆ９１は、プロセッサ８１に接続される。スロットＩ／Ｆ９１は、スロット２３に接続され、スロット２３に装着された所定の種類の記憶媒体（例えば、専用メモリカード）に対するデータの読み出しおよび書き込みを、プロセッサ８１の指示に応じて行う。
【００６０】
プロセッサ８１は、フラッシュメモリ８４およびＤＲＡＭ８５、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
【００６１】
本体装置２は、ネットワーク通信部８２を備える。ネットワーク通信部８２は、プロセッサ８１に接続される。ネットワーク通信部８２は、ネットワークを介して外部の装置と通信（具体的には、無線通信）を行う。本実施形態においては、ネットワーク通信部８２は、第１の通信態様としてＷｉ−Ｆｉの規格に準拠した方式により、無線ＬＡＮに接続して外部装置と通信を行う。また、ネットワーク通信部８２は、第２の通信態様として所定の通信方式（例えば、独自プロトコルによる通信や、赤外線通信）により、同種の他の本体装置２との間で無線通信を行う。なお、上記第２の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置２との間で無線通信可能であり、複数の本体装置２の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
【００６２】
本体装置２は、コントローラ通信部８３を備える。コントローラ通信部８３は、プロセッサ８１に接続される。コントローラ通信部８３は、左コントローラ３および／または右コントローラ４と無線通信を行う。本体装置２と左コントローラ３および右コントローラ４との通信方式は任意であるが、本実施形態においては、コントローラ通信部８３は、左コントローラ３との間および右コントローラ４との間で、Ｂｌｕｅｔｏｏｔｈ（登録商標）の規格に従った通信を行う。
【００６３】
プロセッサ８１は、上述の左側端子１７、右側端子２１、および下側端子２７に接続される。プロセッサ８１は、左コントローラ３と有線通信を行う場合、左側端子１７を介して左コントローラ３へデータを送信するとともに、左側端子１７を介して左コントローラ３から操作データを受信する。また、プロセッサ８１は、右コントローラ４と有線通信を行う場合、右側端子２１を介して右コントローラ４へデータを送信するとともに、右側端子２１を介して右コントローラ４から操作データを受信する。また、プロセッサ８１は、クレードルと通信を行う場合、下側端子２７を介してクレードルへデータを送信する。このように、本実施形態においては、本体装置２は、左コントローラ３および右コントローラ４との間で、それぞれ有線通信と無線通信との両方を行うことができる。また、左コントローラ３および右コントローラ４が本体装置２に装着された一体型装置または本体装置２単体がクレードルに装着された場合、本体装置２は、クレードルを介してデータ（例えば、画像データや音声データ）を据置型モニタ等に出力することができる。
【００６４】
ここで、本体装置２は、複数の左コントローラ３と同時に（換言すれば、並行して）通信を行うことができる。また、本体装置２は、複数の右コントローラ４と同時に（換言すれば、並行して）通信を行うことができる。したがって、複数のユーザは、左コントローラ３および右コントローラ４のセットをそれぞれ用いて、本体装置２に対する入力を同時に行うことができる。一例として、第１ユーザが左コントローラ３および右コントローラ４の第１セットを用いて本体装置２に対して入力を行うと同時に、第２ユーザが左コントローラ３および右コントローラ４の第２セットを用いて本体装置２に対して入力を行うことが可能となる。
【００６５】
本体装置２は、タッチパネル１３の制御を行う回路であるタッチパネルコントローラ８６を備える。タッチパネルコントローラ８６は、タッチパネル１３とプロセッサ８１との間に接続される。タッチパネルコントローラ８６は、タッチパネル１３からの信号に基づいて、例えばタッチ入力が行われた位置を示すデータを生成して、プロセッサ８１へ出力する。
【００６６】
また、ディスプレイ１２は、プロセッサ８１に接続される。プロセッサ８１は、（例えば、上記の情報処理の実行によって）生成した画像および／または外部から取得した画像をディスプレイ１２に表示する。
【００６７】
本体装置２は、コーデック回路８７およびスピーカ（具体的には、左スピーカおよび右スピーカ）８８を備える。コーデック回路８７は、スピーカ８８および音声入出力端子２５に接続されるとともに、プロセッサ８１に接続される。コーデック回路８７は、スピーカ８８および音声入出力端子２５に対する音声データの入出力を制御する回路である。
【００６８】
また、本体装置２は、加速度センサ８９を備える。本実施形態においては、加速度センサ８９は、所定の３軸（例えば、図１に示すｘｙｚ軸）方向に沿った加速度の大きさを検出する。なお、加速度センサ８９は、１軸方向あるいは２軸方向の加速度を検出するものであってもよい。
【００６９】
また、本体装置２は、角速度センサ９０を備える。本実施形態においては、角速度センサ９０は、所定の３軸（例えば、図１に示すｘｙｚ軸）回りの角速度を検出する。なお、角速度センサ９０は、１軸回りあるいは２軸回りの角速度を検出するものであってもよい。
【００７０】
加速度センサ８９および角速度センサ９０は、プロセッサ８１に接続され、加速度センサ８９および角速度センサ９０の検出結果は、プロセッサ８１へ出力される。プロセッサ８１は、上記の加速度センサ８９および角速度センサ９０の検出結果に基づいて、本体装置２の動きおよび／または姿勢に関する情報を算出することが可能である。
【００７１】
本体装置２は、電力制御部９７およびバッテリ９８を備える。電力制御部９７は、バッテリ９８およびプロセッサ８１に接続される。また、図示しないが、電力制御部９７は、本体装置２の各部（具体的には、バッテリ９８の電力の給電を受ける各部、左側端子１７、および右側端子２１）に接続される。電力制御部９７は、プロセッサ８１からの指令に基づいて、バッテリ９８から上記各部への電力供給を制御する。
【００７２】
また、バッテリ９８は、下側端子２７に接続される。外部の充電装置（例えば、クレードル）が下側端子２７に接続され、下側端子２７を介して本体装置２に電力が供給される場合、供給された電力がバッテリ９８に充電される。
【００７３】
図７は、本体装置２と左コントローラ３および右コントローラ４との内部構成の一例を示すブロック図である。なお、本体装置２に関する内部構成の詳細については、図６で示しているため図７では省略している。
【００７４】
左コントローラ３は、本体装置２との間で通信を行う通信制御部１０１を備える。図７に示すように、通信制御部１０１は、端子４２を含む各構成要素に接続される。本実施形態においては、通信制御部１０１は、端子４２を介した有線通信と、端子４２を介さない無線通信との両方で本体装置２と通信を行うことが可能である。通信制御部１０１は、左コントローラ３が本体装置２に対して行う通信方法を制御する。すなわち、左コントローラ３が本体装置２に装着されている場合、通信制御部１０１は、端子４２を介して本体装置２と通信を行う。また、左コントローラ３が本体装置２から外されている場合、通信制御部１０１は、本体装置２（具体的には、コントローラ通信部８３）との間で無線通信を行う。コントローラ通信部８３と通信制御部１０１との間の無線通信は、例えばＢｌｕｅｔｏｏｔｈ（登録商標）の規格に従って行われる。
【００７５】
また、左コントローラ３は、例えばフラッシュメモリ等のメモリ１０２を備える。通信制御部１０１は、例えばマイコン（マイクロプロセッサとも言う）で構成され、メモリ１０２に記憶されるファームウェアを実行することによって各種の処理を実行する。
【００７６】
左コントローラ３は、各ボタン１０３（具体的には、ボタン３３〜３９、４３、４４、および４７）を備える。また、左コントローラ３は、アナログスティック（図７では「スティック」と記載する）３２を備える。各ボタン１０３およびアナログスティック３２は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部１０１へ出力する。
【００７７】
左コントローラ３は、慣性センサを備える。具体的には、左コントローラ３は、加速度センサ１０４を備える。また、左コントローラ３は、角速度センサ１０５を備える。本実施形態においては、加速度センサ１０４は、所定の３軸（例えば、図４に示すｘｙｚ軸）方向に沿った加速度の大きさを検出する。なお、加速度センサ１０４は、１軸方向あるいは２軸方向の加速度を検出するものであってもよい。本実施形態においては、角速度センサ１０５は、所定の３軸（例えば、図４に示すｘｙｚ軸）回りの角速度を検出する。なお、角速度センサ１０５は、１軸回りあるいは２軸回りの角速度を検出するものであってもよい。加速度センサ１０４および角速度センサ１０５は、それぞれ通信制御部１０１に接続される。そして、加速度センサ１０４および角速度センサ１０５の検出結果は、適宜のタイミングで繰り返し通信制御部１０１へ出力される。なお、加速度センサ１０４および角速度センサ１０５がコントローラに備えられる慣性センサの一例に相当する。
【００７８】
通信制御部１０１は、各入力部（具体的には、各ボタン１０３、アナログスティック３２、各センサ１０４および１０５）から、入力に関する情報（具体的には、操作に関する情報、またはセンサによる検出結果）を取得する。通信制御部１０１は、取得した情報（または取得した情報に所定の加工を行った情報）を含む操作データを本体装置２へ送信する。なお、操作データは、所定時間に１回の割合で繰り返し送信される。なお、入力に関する情報が本体装置２へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
【００７９】
上記操作データが本体装置２へ送信されることによって、本体装置２は、左コントローラ３に対して行われた入力を得ることができる。すなわち、本体装置２は、各ボタン１０３およびアナログスティック３２に対する操作を、操作データに基づいて判別することができる。また、本体装置２は、左コントローラ３の動きおよび／または姿勢に関する情報を、操作データ（具体的には、加速度センサ１０４および角速度センサ１０５の検出結果）に基づいて算出することができる。
【００８０】
左コントローラ３は、振動によってユーザに通知を行うための振動子１０７を備える。本実施形態においては、振動子１０７は、本体装置２からの指令によって制御される。すなわち、通信制御部１０１は、本体装置２からの上記指令を受け取ると、当該指令に従って振動子１０７を駆動させる。ここで、左コントローラ３は、コーデック部１０６を備える。通信制御部１０１は、上記指令を受け取ると、指令に応じた制御信号をコーデック部１０６へ出力する。コーデック部１０６は、通信制御部１０１からの制御信号から振動子１０７を駆動させるための駆動信号を生成して振動子１０７へ与える。これによって振動子１０７が動作する。
【００８１】
振動子１０７は、より具体的にはリニア振動モータである。リニア振動モータは、回転運動をする通常のモータと異なり、入力される電圧に応じて所定方向に駆動されるため、入力される電圧の波形に応じた振幅および周波数で振動をさせることができる。本実施形態において、本体装置２から左コントローラ３に送信される振動制御信号は、単位時間ごとに周波数と振幅とを表すデジタル信号であってよい。別の実施形態においては、本体装置２から波形そのものを示す情報を送信するようにしてもよいが、振幅および周波数だけを送信することで通信データ量を削減することができる。また、さらにデータ量を削減するため、そのときの振幅および周波数の数値に替えて、前回の値からの差分だけを送信するようにしてもよい。この場合、コーデック部１０６は、通信制御部１０１から取得される振幅および周波数の値を示すデジタル信号をアナログの電圧の波形に変換し、当該波形に合わせて電圧を入力することで振動子１０７を駆動させる。したがって、本体装置２は、単位時間ごとに送信する振幅および周波数を変えることによって、そのときに振動子１０７を振動させる振幅および周波数を制御することができる。なお、本体装置２から左コントローラ３に送信される振幅および周波数は、１つに限らず、２つ以上送信するようにしてもよい。その場合、コーデック部１０６は、受信された複数の振幅および周波数それぞれが示す波形を合成することで、振動子１０７を制御する電圧の波形を生成することができる。
【００８２】
左コントローラ３は、電力供給部１０８を備える。本実施形態において、電力供給部１０８は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ３の各部（具体的には、バッテリの電力の給電を受ける各部）に接続される。
【００８３】
図７に示すように、右コントローラ４は、本体装置２との間で通信を行う通信制御部１１１を備える。また、右コントローラ４は、通信制御部１１１に接続されるメモリ１１２を備える。通信制御部１１１は、端子６４を含む各構成要素に接続される。通信制御部１１１およびメモリ１１２は、左コントローラ３の通信制御部１０１およびメモリ１０２と同様の機能を有する。したがって、通信制御部１１１は、端子６４を介した有線通信と、端子６４を介さない無線通信（具体的には、Ｂｌｕｅｔｏｏｔｈ（登録商標）の規格に従った通信）との両方で本体装置２と通信を行うことが可能であり、右コントローラ４が本体装置２に対して行う通信方法を制御する。
【００８４】
右コントローラ４は、左コントローラ３の各入力部と同様の各入力部を備える。具体的には、各ボタン１１３、アナログスティック５２、慣性センサ（加速度センサ１１４および角速度センサ１１５）を備える。これらの各入力部については、左コントローラ３の各入力部と同様の機能を有し、同様に動作する。なお、加速度センサ１１４および角速度センサ１１５がコントローラに備えられる慣性センサの他の例に相当する。
【００８５】
また、右コントローラ４は、振動子１１７およびコーデック部１１６を備える。振動子１１７およびコーデック部１１６は、左コントローラ３の振動子１０７およびコーデック部１０６と同様に動作する。すなわち、通信制御部１１１は、本体装置２からの指令に従って、コーデック部１１６を用いて振動子１１７を動作させる。
【００８６】
右コントローラ４は、電力供給部１１８を備える。電力供給部１１８は、左コントローラ３の電力供給部１０８と同様の機能を有し、同様に動作する。
【００８７】
以上に説明したように、本実施形態におけるゲームシステム１については左コントローラ３および右コントローラ４が本体装置２から着脱可能である。また、クレードルに左コントローラ３および右コントローラ４が本体装置２に装着された一体型装置や本体装置２単体を装着することによって据置型モニタ６に画像（および音声）を出力可能である。以下、左コントローラ３および右コントローラ４を本体装置２から取り外した状態で、クレードルに本体装置２単体を装着することによって据置型モニタ６に画像（および音声）を出力する利用態様におけるゲームシステムを用いて説明する。
【００８８】
上述のように、本実施形態においては、左コントローラ３および右コントローラ４を本体装置２から外した状態（「離脱状態」と呼ぶ）でゲームシステム１を利用することも可能である。離脱状態でゲームシステム１を利用してアプリケーション（例えば、ゲームアプリケーション）に対する操作を行う場合の態様としては、２人のユーザが左コントローラ３および右コントローラ４をそれぞれ用いる態様が考えられる。また、３人以上のユーザが同じアプリケーションを用いて操作する場合は、左コントローラ３および右コントローラ４の組を複数組用意して、それぞれのユーザが左コントローラ３および右コントローラ４のいずれか１つを用いる態様等が考えられる。また、複数のユーザが操作を行う他の態様としては、それぞれのユーザが左コントローラ３および右コントローラ４の両方を１人で用いる態様が考えられる。この場合、左コントローラ３および右コントローラ４の組を複数組用意して、それぞれのユーザが当該複数組のうちの１組を用いる態様等が考えられる。
【００８９】
図８〜図１４は、離脱状態において、２人のユーザが左コントローラ３および右コントローラ４をそれぞれ操作してゲームシステム１を利用する様子の一例を示す図である。図８〜図１４に示すように、離脱状態において、第１のユーザが左コントローラ３を両手で把持し、第２のユーザが右コントローラ４を両手で把持してそれぞれ操作を行いながら、据置型モニタ６に表示された画像を見ることができる。
【００９０】
例えば、本実施例では、第１のユーザは、縦長の略板状である左コントローラ３の長手方向の横方向（図１に示す下方向（ｙ軸負方向））が水平方向になるとともに、本体装置２に装着された際に当該本体装置２と接する側面（スライダ４０が設けられている側面）が前方に向き、かつ、左コントローラ３の主面（アナログスティック３２等が設けられる面）が上に向くように左コントローラ３を両手で把持する。つまり、第１のユーザの両手によって把持されている左コントローラ３は、ｘ軸負方向がユーザの前方を向き、ｚ軸正方向が上を向いた状態となる。また、第２のユーザは、縦長の略板状である右コントローラ４の長手方向の横方向（図１に示す上下方向（ｙ軸負方向））が水平方向になるとともに、本体装置２に装着された際に当該本体装置２と接する側面（スライダ６２が設けられている側面）が前方に向き、かつ、右コントローラ４の主面（アナログスティック５２等が設けられる面）が上に向くように右コントローラ４を両手で把持する。つまり、第２のユーザの両手によって把持されている右コントローラ４は、ｘ軸正方向がユーザの前方を向き、ｚ軸正方向が上を向いた状態となる。
【００９１】
このように、両手で把持された左コントローラ３または右コントローラ４の各操作ボタンやスティックを操作することに応じて、ゲームプレイが行われる。また、両手で左コントローラ３または右コントローラ４を把持した状態（以下、このような操作方式を横持ち操作方式と記載することがある）から、各コントローラを上下左右前後に動かしたり、各コントローラを回転させたり、各コントローラを振り動かしたりすることによって、各コントローラの動きや姿勢に応じてゲームプレイが行われる。そして、上記ゲームプレイにおいて、左コントローラ３の加速度センサ１０４は、上記ｘｙｚ軸方向の加速度をそれぞれ操作入力として検出可能であり、角速度センサ１０５は、上記ｘｙｚ軸方向周りの角速度をそれぞれ操作入力として検出可能である。また、右コントローラ４の加速度センサ１１４は、上記ｘｙｚ軸方向の加速度をそれぞれ操作入力として検出可能であり、角速度センサ１１５は、上記ｘｙｚ軸方向周りの角速度をそれぞれ操作入力として検出可能である。
【００９２】
また、左コントローラ３および／または右コントローラ４を把持してゲームプレイする場合、当該ゲーム状況に応じて、左コントローラ３および／または右コントローラ４に振動が与えられる。上述したように、左コントローラ３は、振動子１０７を有しており、右コントローラ４は、振動子１１７を有している。本体装置２のプロセッサ８１は、実行しているゲーム状況に応じて振動データを左コントローラ３および／または右コントローラ４に送信することによって、当該振動データに応じた振幅および周波数で振動子１０７および／または振動子１１７を振動させることができる。
【００９３】
図８〜図１４は、左コントローラ３または右コントローラ４を操作してプレイするゲームにおいて表示されるゲーム画像例を示している。本ゲーム例では、複数のユーザからなるチームを少なくとも１つ含むチーム編成を設定し、当該チームに属するユーザが協力してゲームプレイされる。例えば、図８に示すように、本ゲーム例では、複数のキャラクタ（図８の例では、２つのプレイヤキャラクタＰＣ１およびＰＣ２と２つの非プレイヤキャラクタＮＰＣ１およびＮＰＣ２）が協力して制限時間以内にゴールすることを目的とするメインゲーム（例えば、複数のキャラクタが乗船してゴールを目指すラフティングゲーム）の画像が据置型モニタ６に表示される。そして、左コントローラ３を操作する第１のユーザは、左コントローラ３本体を振り動かしたり、左コントローラ３本体の姿勢を変化させたり、アナログスティック３２や操作ボタン３３〜３６を操作したりすることによって、第１のプレイヤキャラクタＰＣ１を操作することができる。また、第１のユーザと同じチームに属する第２のユーザは、右コントローラ４を操作し、右コントローラ４本体を振り動かしたり、右コントローラ４本体の姿勢を変化させたり、アナログスティック５２や操作ボタン５３〜５６を操作したりすることによって、第２のプレイヤキャラクタＰＣ２を操作することができる。なお、第１の非プレイヤキャラクタＮＰＣ１および第２の非プレイヤキャラクタＮＰＣ２は、第１のユーザおよび第２のユーザのチームが操作するキャラクタチーム（すなわち、プレイヤキャラクタＰＣ１およびＰＣ２が属するキャラクタチーム）に属するが、コンピュータ（本体装置２のプロセッサ８１）によってそれらの動作が自動的に制御される。なお、第２ゲームは、一例としてメインゲームに相当する。また、第１ゲームや第２ゲームに登場するユーザが操作するキャラクタは、一例としてプレイヤキャラクタＰＣ１およびＰＣ２に相当する。
【００９４】
また、上記メインゲームのゲーム画像には、当該メインゲームにおける制限時間、すなわち、ゴールするまでに許容される残り時間を示す残り時間通知画像Ｔが表示される。残り時間通知画像Ｔは、上記残り時間に応じた数値を示し、当該残り時間がカウントダウンされる様子が通知される。一例として、図８に示すメインゲーム画像例では、残り時間が４５秒であることを示す残り時間通知画像Ｔが表示されている。
【００９５】
図９に示すように、上記メインゲームでは、複数のキャラクタが乗船しているラフト（船）がゴールに到達するまでのルート上における少なくとも１箇所の特定の位置には、アイテムIが配置されている。アイテムIは、プレイヤキャラクタＰＣ１〜ＰＣ２および非プレイヤキャラクタＮＰＣ１〜ＮＰＣ２や乗船しているラフトが接触して取得した場合、上記メインゲームとは別のサブゲームをユーザがプレイできる権利を与えるものである。上記メインゲーム中にアイテムIが取得された場合、当該アイテムIが取得されたことを契機として当該メインゲームを一旦中断して、当該メインゲームとは別のサブゲームが開始される。上記サブゲームは、上記メインゲームをプレイしていた複数のユーザが操作してプレイする少なくとも１つのミニゲームと、当該ミニゲームの結果に応じて行われる協調操作演出とによって構成されている。なお、第１ゲームは、一例としてミニゲームに相当する。
【００９６】
図１０は、上記ミニゲームのゲーム画像例を示している。図１０に示すように、上記メインゲームを中断して行われるミニゲームは、当該メインゲームをプレイしていたチームに属するユーザが当該チーム編成を継続しながら引き続きプレイすることができる。したがって、上記ミニゲームは、上記メインゲームをプレイしていた第１のユーザが引き続き左コントローラ３を操作し、当該メインゲームをプレイしていた第２のユーザが引き続き右コントローラ４を操作して、据置型モニタ６に表示された同じゲーム画像を用いてゲームプレイする。上記ミニゲームは、上記メインゲームをプレイしていたチームに属する複数のユーザが引き続いて協力してプレイ可能なゲームであればどのようなものでもよい。一例として、複数のユーザが操作するプレイヤキャラクタＰＣが順番にさいころを振ったりカードをめくったりするような単純なゲームであってもよいし、各種スポーツのプレイや各種スポーツの一場面を模したゲームであってもよい。また、上記ミニゲームは、上記メインゲームに登場していた複数のキャラクタ（例えば、２つのプレイヤキャラクタＰＣ１〜ＰＣ２および非プレイヤキャラクタＮＰＣ１〜ＮＰＣ２）の少なくとも１つが登場するゲームでもよいし、当該キャラクタが登場しないゲームであってもよい。また、上記ミニゲームは、上記メインゲームで用いられているゲームステージとは異なるゲームステージが用いられてもよいし、上記メインゲームで用いられているゲームステージと同じゲームステージが用いられてもよい。また、上記メインゲームが他のユーザチームと対決して操作するゲームである場合、上記ミニゲームも当該他のユーザチームと対決するゲームであってもよい。
【００９７】
なお、上記ミニゲームは、上記メインゲームをプレイしていたチームに属するユーザの少なくとも１人が参加する態様であってもよい。例えば、上記ミニゲームが上記メインゲームをプレイしていたチームに属するユーザの１人だけがプレイするものであっても、後述する協調操作演出も当該チームを対象として実行することが可能である。
【００９８】
図１１に示すように、上記ミニゲームが終了した場合、据置型モニタ６に当該ミニゲームの結果が表示される。そして、上記ミニゲームの結果が好成績であった場合、中断しているメインゲームにおける有利な効果が付与される。ここで、上記ミニゲームの結果が好成績であった場合とは、当該ミニゲームにおいて閾値以上の成果（得点）が得られた場合や当該ミニゲームにおいて勝利した場合等が考えられる。また、メインゲームにおける有利な効果とは、メインゲームにおいて用いられるゲームパラメータを当該メインゲームの進行において有利になるように増減させるものであり、一例として上記メインゲームで設定されている残り時間を増加させることが考えられる。図１１の例では、上記ミニゲームがＡランクでクリアされたため、上記メインゲームの残り時間が３０秒増えたことが通知されている。なお、上記ミニゲームの結果が好成績であった場合に付与される有利な効果は、上記メインゲームで用いられるゲームコインが増加するものでもよいし、上記メインゲームで用いられるアイテムを取得するものでもよいし、上記メインゲームに登場するキャラクタの能力が向上するものでもよいし、上記メインゲームの得点を加算するものであってもよい。また、上記ミニゲームの結果が好成績でなかった場合であっても、中断しているメインゲームにおける一定の有利な効果が付与されてもよい。
【００９９】
また、上記ミニゲームの結果が好成績であった場合、当該好成績であったユーザチームに属するユーザに対して、協調操作を促す通知が行われる。なお、協調操作を行う対象となるキャラクタチームに、コンピュータによって動作が制御される非プレイヤキャラクタが含まれている場合、当該キャラクタチームからコンピュータ制御の非プレイヤキャラクタを除いたプレイヤキャラクタを操作しているそれぞれのユーザが、協調操作を行う対象となることになる。ここで、協調操作を促す通知は、上記ミニゲームの結果が好成績であったユーザチームのユーザに左コントローラ３または右コントローラ４を用いた所定操作を促す通知であり、画像または音声の少なくとも一方によって行われる。例えば、図１１の例では、ユーザが把持している左コントローラ３または右コントローラ４を前に突き出すように動かす操作が上記協調操作の操作内容であることを示す協調操作通知画像Ｎが据置型モニタ６に表示されている。また、上記ミニゲームにおいて好成績を上げて上記協調操作を行う対象となるキャラクタチームに属するキャラクタ（図１１の例では、２つのプレイヤキャラクタＰＣ１〜ＰＣ２および非プレイヤキャラクタＮＰＣ１〜ＮＰＣ２）が表示される。なお、上記ミニゲームの結果が好成績でなかった場合であっても、当該好成績でなかったユーザチームに属するユーザに対して、協調操作を促す通知が行われてもよい。また、上記協調操作を行う対象を示す場合、当該協調操作を行う対象となるキャラクタチームに属するキャラクタを表示しなくてもよく、一例として好成績であったユーザチームに属するユーザ名が表示されてもよい。なお、第１通知は、一例として協調操作通知画像Ｎに相当する。
【０１００】
また、上記協調操作は、当該協調操作の対象となっている複数のユーザが同じタイミングで協調して操作することによって成立する。ここで、操作が上記同じタイミングで行われたことを判定する場合、後述する協調操作を行うことを促すための表示「イエーイ」の通知に重なるほぼ同じタイミングで操作が行われた場合に成立判定（相対的に厳しい判定）してもよいし、当該通知の前および／または後に設定された判定期間内で操作が行われた場合に成立判定（相対的に緩い判定）してもよい。このように複数のユーザが同じタイミングで操作することを促すために、協調操作通知画像Ｎは、操作タイミングを示す号令を通知する。例えば、図１１の例では、協調操作通知画像Ｎにおいて協調操作の準備を促すための表示「せーの」を通知して、現時点が協調操作を行う直前の準備段階であることをユーザに示している。
【０１０１】
上記協調操作の準備を促すための通知とともに、協調操作の対象となるユーザチームに属するユーザが操作している左コントローラ３または右コントローラ４に対して、振動が与えられる。このように、協調操作の対象となるユーザに対する通知は、協調操作通知画像Ｎや当該協調操作を行う対象となるキャラクタチームの表示による通知だけでなく、当該ユーザが把持しているコントローラへの振動による通知も行われる。したがって、左コントローラ３または右コントローラ４を把持しているユーザは、自身が協調操作の対象であることがわかりやすくなる。なお、左コントローラ３または右コントローラ４に対して与えられる振動は、上記協調操作の準備を促すため表示通知が開始された時点から当該表示通知が継続している期間より短い期間経過後に終了してもよいし、上記協調操作の準備を促すため表示通知が開始された時点から当該表示通知が終了するまで連続して与えられてもよい。なお、第２通知は、一例としてユーザが把持しているコントローラへの振動に相当する。
【０１０２】
そして、協調操作を行う操作タイミングを示す号令の次の段階として、上記協調操作の準備を促すための通知の所定時間後において、現時点が協調操作を行うタイミングであることが示される。例えば、図１２の例では、協調操作通知画像Ｎにおいて協調操作を行うことを促すための表示「イエーイ」を通知して、現時点が協調操作を行うタイミングであることをユーザに示している。
【０１０３】
上記協調操作を行うことを促すための通知とともに、協調操作の対象となるユーザチームに属するユーザが操作している左コントローラ３または右コントローラ４に対して、再度振動が与えられる。このように、協調操作の対象となるユーザが操作している左コントローラ３または右コントローラ４に複数回の振動を与えることによって、さらにユーザ自身が協調操作の対象であることを気づかせることができる。
【０１０４】
そして、上記協調操作の準備を促すための通知および上記協調操作を行うことを促すための通知によって構成される協調操作の通知から所定の閾時間内に、当該協調操作の対象となるユーザ全員が協調操作を行ったと判定された場合、指示された協調操作が成立する。なお、協調操作が成立したことを判定するための上記閾時間は、上記協調操作を行うことを促すための通知に重なるほぼ同じタイミングで操作が行われたことを判定可能な時間（相対的に厳しい判定を行うための時間）に設定されてもよいし、当該通知のタイミングと当該通知の前および／または後の期間とを含む相対的に長い時間（相対的に緩い判定を行うための時間）に設定されてもよい。また、協調操作を行う対象となるキャラクタチームに、コンピュータによって動作が制御される非プレイヤキャラクタが含まれている場合、当該キャラクタチームからコンピュータ制御の非プレイヤキャラクタを除いたプレイヤキャラクタを操作しているそれぞれのユーザが、協調操作を行う対象となる。例えば、図１２の例では、上記協調操作を行うことを促すための通知に応じて、当該協調操作の対象となる第１のユーザが左コントローラ３を前に突き出す操作を行っているとともに、第２のユーザが右コントローラ４を前に突き出す操作を行っているため、協調操作が成立したと判定される。例えば、左コントローラ３および右コントローラ４を動かす協調操作が行われた否かの判定は、それぞれのコントローラに生じている加速度（具体的には、加速度センサ１０４および加速度センサ１１４の検出結果）および／またはそれぞれのコントローラに生じている角速度（具体的には、角速度センサ１０５および角速度センサ１１５の検出結果）に基づいて行うことができる。例えば、協調操作の対象となっているコントローラにおいて、加速度の変化が第１の閾値より大きい、かつ、所定時間前（例えば、２０フレーム前）からの角速度の変化が第２の閾値より小さい状態が上記閾時間内に生じた場合、当該コントローラにおいて当該協調操作が行われたと判定することができる。そして、協調操作の対象となっているコントローラ全てにおいて上記協調操作が行われたと判定された場合、当該協調操作の対象となるユーザ全員による協調操作が成功したと判定される。また、協調操作の対象となっているコントローラの少なくとも１つにおいて上記協調操作が行われたと判定されなかった場合、当該協調操作の対象となるユーザ全員による協調操作が失敗したと判定される。
【０１０５】
なお、上記協調操作の通知は、複数回繰り返されてもかまわない。例えば、上記協調操作の準備を促すための通知および上記協調操作を行うことを促すための通知が行われた所定時間の経過後に、上記協調操作の準備を促すための通知および上記協調操作を行うことを促すための通知が再度行われてもよい。この場合、左コントローラ３および右コントローラ４への振動による通知についても、上記繰り返される協調操作の通知とともに行われる。一例として、協調操作の準備を促すための表示「せーの」と協調操作を行うことを促すための表示「イエーイ」とが所定周期（例えば、１秒ごと）で切り替わり、それぞれ所定回数（例えば、３回）繰り返されてもよい。この場合、協調操作の準備を促すための最初の表示「せーの」が通知されてから、協調操作を行うことを促すための最後の表示「イエーイ」が通知されて所定時間経過（例えば、１秒経過）するまでの期間、すなわち協調操作の準備を促すための最初の表示「せーの」が通知から７秒以内の期間において、上記協調操作が成功しなければ失敗判定してもよい。このように協調操作の通知が複数回繰り返されることによって、ユーザ自身が協調操作の対象であることをさらに気づかせることが可能となる。
【０１０６】
また、上記協調操作の操作内容は、他の操作内容であってもよい。第１の例として、ユーザが把持している左コントローラ３または右コントローラ４を上に突き出すように動かす操作（ハイタッチ操作）が協調操作の操作内容であってもよい。第２の例として、ユーザが把持している左コントローラ３または右コントローラ４の長手方向が上下方向となるように姿勢を変えた状態で前に突き出すまたは身体に近づけるように動かす操作（サムズアップ操作）が協調操作の操作内容であってもよい。第３の例として、ユーザが把持している左コントローラ３または右コントローラ４を上から下方向へ素早く１回以上動かす操作（ガッツポーズ操作）が協調操作の操作内容であってもよい。第４の例として、ユーザが把持している左コントローラ３または右コントローラ４を左右に振り動かす操作（手を振る操作）が協調操作の操作内容であってもよい。また、何れの例であっても、ユーザが把持している左コントローラ３と別のユーザが把持している右コントローラ４とを接触させるような操作を、協調操作の操作内容としてもよい。また、上記協調操作の操作内容は、異なる操作内容の組み合わせであってもよく、一例として、ハイタッチ操作の後にサムズアップ操作するような操作内容の組み合わせが協調操作の操作内容であってもよい。このような様々な協調操作の操作内容であっても、当該操作内容に応じて判定基準を設定することによって、それぞれのコントローラに生じている加速度や加速度の履歴、それぞれのコントローラに生じている角速度や角速度の履歴、当該加速度および／または当該角速度に基づいて算出可能な重力加速度基準のコントローラの姿勢等に基づいて、協調操作が行われたか否かについて判定することが可能となる。なお、上記協調操作の操作内容は、左コントローラ３本体または右コントローラ４本体を動かすような操作内容でなくてもよく、ボタン操作（例えば、操作ボタンの押下操作）や傾倒操作（例えば、アナログスティックの傾倒操作）等でもよい。
【０１０７】
また、上述した説明では、上記協調操作を促すための通知とともに、左コントローラ３および右コントローラ４に対して振動が与えられる例を用いたが、上記協調操作を促すための通知とともに、他の刺激が左コントローラ３および右コントローラ４から与えられてもよい。一例として、上記協調操作を促すための通知とともに、協調操作の対象となるユーザチームに属するユーザが操作している左コントローラ３または右コントローラ４のハウジング３１または５１の少なくとも一部が変形する（例えば、膨らむ）ことによって、ユーザに刺激が与えられもよい。他の例として、上記協調操作を促すための通知とともに、協調操作の対象となるユーザチームに属するユーザが操作している左コントローラ３または右コントローラ４の操作ボタンやスティックが動く（例えば、飛び出す）ことによって、ユーザに刺激が与えられもよい。このように振動とは異なる刺激を左コントローラ３または右コントローラ４の接触体（把持するユーザの手）に与えた場合であっても、表示や音声とは異なる方法で協調操作を促すことが可能となる。
【０１０８】
また、上記協調操作を促すための通知とともに、左コントローラ３および右コントローラ４から接触体に刺激が与えられなくてもよい。表示や音声による上記協調操作を促すための通知だけであっても、ユーザは、上記協調操作を促されていることを認識することが可能であり、左コントローラ３および右コントローラ４から刺激が与えられなくてもユーザ自身が協調操作の対象であることを気づくことは可能である。
【０１０９】
また、上記協調操作の対象となるユーザは、上記ミニゲームの結果が好成績であったユーザチームに属する１人のユーザでもよい。例えば、上記ユーザチームに属するユーザに含まれる特定のユーザにおいては、上記協調操作の対象外にすることも考えられ、結果的に当該ユーザチームに属する１人のユーザが協調操作の対象となることもあり得る。
【０１１０】
図１３に示すように、上記協調操作の対象となるユーザ全員による協調操作が成功したと判定された場合、協調操作成功演出が行われる。例えば、協調操作成功演出は、上記協調操作を行う対象となるキャラクタチームに属するキャラクタ（図１３の例では、２つのプレイヤキャラクタＰＣ１〜ＰＣ２および非プレイヤキャラクタＮＰＣ１〜ＮＰＣ２）が、ユーザが行った上記協調操作におけるユーザ動作に対応して動作する。一例として、コントローラを前に突き出すような協調操作が行われた場合、上記プレイヤキャラクタＰＣ１〜ＰＣ２および非プレイヤキャラクタＮＰＣ１〜ＮＰＣ２が画面中央に集まってそれぞれ協調操作におけるユーザ動作を模した動作（例えば、互いに片手を前に突き出したり、互いにグータッチする動作を行ったり、互いにハイタッチする動作を行ったりする動作）を行うことによって、上記協調操作成功演出が行われる。なお、協調操作成功演出におけるキャラクタの動作は、ユーザが行った協調操作による動きに対応していなくてもよく、単に協調操作が成功したことをキャラクタが喜ぶ動作であってもよい。なお、成功条件が満たされたと判定された場合に行われる所定のゲーム演出は、一例として協調操作成功演出に相当する。
【０１１１】
そして、上記協調操作の対象となるユーザ全員による協調操作が成功したと判定された場合、中断しているメインゲームにおける有利な効果がさらに付与される。協調操作成功時に付与される有利な効果も、上記メインゲームにおいて用いられるゲームパラメータを当該メインゲームの進行において有利になるように増減させるものであり、上記ミニゲーム終了時と同様に当該メインゲームで設定されている残り時間を増加させることが考えられる。図１３の例では、上記協調操作が成功したことに応じて、上記メインゲームの残り時間がさらに３秒増えたことが通知されている。なお、協調操作成功時に付与される有利な効果は、上記ミニゲームの結果に応じて与えられる効果とは異なるものであってもよい。また、協調操作成功時に付与される有利な効果は、上記メインゲームで用いられるゲームコインが増加するものでもよいし、上記メインゲームで用いられるアイテムを取得するものでもよいし、上記メインゲームに登場するキャラクタの能力が向上するものでもよいし、上記メインゲームの得点を加算するものであってもよい。なお、成功条件が満たされたと判定された場合に行われる所定のゲーム演出は、他の例としてメインゲームにおける有利な効果がさらに付与される（例えば、メインゲームの残り時間が増加される）ことが通知される演出に相当する。
【０１１２】
図１４に示すように、上記ミニゲームおよび当該ミニゲームの結果に応じて行われる協調操作演出とで構成されるサブゲームが終了した場合、中断していた上記メインゲームに戻ってゲームプレイが再開される。そして、上記サブゲームにおいて有利な効果が得られている場合、再開されたメインゲームに当該有利な効果が反映される。例えば、図１４の例では、上記サブゲームにおいて、メインゲームの残り時間が３３秒増加する効果（上記ミニゲームにおける残り時間が３０秒増加する効果と上記協調操作演出における残り時間が３秒増加する効果とを積算した効果）が得られたため、残り時間通知画像Ｔが示す残り時間が中断時の３５秒から６８秒に増加しており、残り時間が３３秒増加したことが通知されている。
【０１１３】
なお、上記協調操作の対象となるユーザ全員による協調操作がまだ成功に至っていない期間では、上記協調操作を行う対象となるキャラクタチームに属するキャラクタが協調操作を待っているような動作を行ってもよい。例えば、上記協調操作の対象となるユーザの一部が当該協調操作を行った場合、当該ユーザが操作するプレイヤキャラクタＰＣが他のユーザの協調操作を待つような動作をすることが考えられる。一例として、協調操作におけるユーザ動作を模したプレイヤキャラクタＰＣの動作がハイタッチする動作である場合、プレイヤキャラクタＰＣがジャンプする前のかがむ動作を、他のユーザの協調操作を待つ動作として行うことができる。また、上記協調操作の対象となるユーザ全員による協調操作が失敗したことが確定した場合、当該協調操作を行う対象となるキャラクタチームに属するキャラクタ全員が残念がる動作を行うことが考えられる。
【０１１４】
また、上記協調操作は、協調操作の対象となるユーザの少なくとも１人が当該協調操作を行った場合に成功と判定してもかまわない。この場合、上記協調操作を行ったと判定された人数に応じて、与えられる有利な効果の度合いが増減してもよい。
【０１１５】
また、上記協調操作を促すタイミングは、上記ミニゲームの終了直後だけでなく、上記ミニゲームの開始直前や上記ミニゲームの途中であってもよい。例えば、上記ミニゲームの開始直前に協調操作を促す場合、当該ミニゲーム開始前に連帯感を煽る演出が行われてもよい。なお、上記ミニゲームの開始直前に協調操作を促す場合は、当該協調操作が成功することに応じて、当該協調操作後に行われるミニゲームにおける有利な効果が付与されてもよく、上記メインゲームがないサブゲームだけで構成されるゲーム態様であっても上記協調操作による効果を得ることができる。また、上記ミニゲームの途中で協調操作を促す場合、当該ミニゲームの途中で当該ミニゲームを進める上で効果的なイベントが生じた時点で協調操作を促すことが考えられる。ここで、効果的なイベントが生じた時点とは、スポーツを模したミニゲームにおいて得点が得られた時点、相手チームの得点を防いだ時点、敵と戦うミニゲームにおいて敵を倒した時点、敵の攻撃を防御した時点等が考えられる。
【０１１６】
また、上述した説明では、メインゲームの一例として、複数のキャラクタが乗船して残り時間が０となる前のゴールを目指すラフティングゲームを用いたが、他のゲームでもよいことは言うまでもない。例えば、複数のユーザが操作するプレイヤキャラクタが順番にさいころを振って進む双六ゲームが上記メインゲームである場合、止まった双六マスに応じてゲームコインが増減するとともに、特定の双六マスに止まることによってまたは１ターンが経過する毎に上記サブゲームが行われ、上記ミニゲームや上記協調操作の結果に応じてゲームコインがさらに増加することが考えられる。
【０１１７】
次に、図１５〜図１９を参照して、本実施形態においてゲームシステム１で実行される具体的な処理の一例について説明する。図１５は、本実施形態において本体装置２のＤＲＡＭ８５に設定されるデータ領域の一例を示す図である。なお、ＤＲＡＭ８５には、図１５に示すデータの他、他の処理で用いられるデータも記憶されるが、詳細な説明を省略する。
【０１１８】
ＤＲＡＭ８５のプログラム記憶領域には、ゲームシステム１で実行される各種プログラムＰａが記憶される。本実施形態においては、各種プログラムＰａは、上述した左コントローラ３および右コントローラ４との間で無線通信するための通信プログラムや、左コントローラ３および／または右コントローラ４から取得したデータに基づいた情報処理（例えば、ゲーム処理）を行うためのアプリケーションプログラム等が記憶される。なお、各種プログラムＰａは、フラッシュメモリ８４に予め記憶されていてもよいし、ゲームシステム１に着脱可能な記憶媒体（例えば、スロット２３に装着された所定の種類の記憶媒体）から取得されてＤＲＡＭ８５に記憶されてもよいし、インターネット等のネットワークを介して他の装置から取得されてＤＲＡＭ８５に記憶されてもよい。プロセッサ８１は、ＤＲＡＭ８５に記憶された各種プログラムＰａを実行する。
【０１１９】
また、ＤＲＡＭ８５のデータ記憶領域には、ゲームシステム１において実行される通信処理や情報処理等の処理において用いられる各種のデータが記憶される。本実施形態においては、ＤＲＡＭ８５には、操作データＤａ、角速度データＤｂ、加速度データＤｃ、チーム編成データＤｄ、残り時間データＤｅ、操作待ち時間データＤｆ、振動データＤｇ、サブゲームフラグデータＤｈ、ミニゲームフラグデータＤｉ、操作待ちフラグデータＤｊ、キャラクタ動作データＤｋ、および画像データＤｍ等が記憶される。
【０１２０】
操作データＤａは、左コントローラ３および／または右コントローラ４からそれぞれ適宜取得した操作データである。上述したように、左コントローラ３および／または右コントローラ４からそれぞれ送信される操作データには、各入力部（具体的には、各ボタン、アナログスティック、各センサ）からの入力に関する情報（具体的には、操作に関する情報や各センサによる検出結果）が含まれている。本実施形態では、無線通信によって左コントローラ３および／または右コントローラ４からそれぞれ所定周期で操作データが送信されており、当該受信した操作データを用いて操作データＤａが適宜更新される。なお、操作データＤａの更新周期は、後述するゲームシステム１で実行される処理の周期である１フレーム毎に更新されてもよいし、上記無線通信によって操作データが送信される周期毎に更新されてもよい。
【０１２１】
角速度データＤｂは、左コントローラ３および右コントローラ４それぞれに生じている角速度を示すデータである。例えば、角速度データＤｂは、左コントローラ３および右コントローラ４それぞれに生じているｘｙｚ軸周りの角速度を示すデータ等を含んでいる。
【０１２２】
加速度データＤｃは、左コントローラ３および右コントローラ４それぞれに生じている加速度を示すデータである。例えば、加速度データＤｃは、左コントローラ３および右コントローラ４それぞれに生じている重力加速度を除いて、ｘｙｚ軸方向に生じている加速度を示すデータ等を含んでいる。
【０１２３】
チーム編成データＤｄは、ゲームを行うキャラクタチームをそれぞれ示すデータであり、当該チームのうち、複数のユーザがそれぞれ操作するプレイヤキャラクタＰＣを含むチームを少なくとも１つ含むチーム編成を示すデータである。チーム編成データＤｄには、各キャラクタチームに属するプレイヤキャラクタＰＣ、各キャラクタチームに属する非プレイヤキャラクタＮＰＣ、当該プレイヤキャラクタＰＣの操作に用いられているコントローラの識別情報等が管理される。
【０１２４】
残り時間データＤｅは、メインゲームにおいてゴールするまでに許容される残り時間（ゴールするまでの制限時間）を示すデータである。操作待ち時間データＤｆは、複数のユーザによる協調操作が行われるのを待っている時間を示すデータである。
【０１２５】
振動データＤｇは、左コントローラ３および／または右コントローラ４をそれぞれ振動させるための振動を示すデータである。
【０１２６】
サブゲームフラグデータＤｈは、サブゲームが行われている場合にオンに設定されるサブゲームフラグを示すデータである。ミニゲームフラグデータＤｉは、ミニゲームが行われている場合にオンに設定されるミニゲームフラグを示すデータである。操作待ちフラグデータＤｊは、複数のユーザによる協調操作を待っている期間においてオンに設定される操作待ちフラグを示すデータである。
【０１２７】
キャラクタ動作データＤｋは、各プレイヤキャラクタＰＣおよび各非プレイヤキャラクタＮＰＣの仮想空間における位置、方向、姿勢、および動作等をそれぞれ示すデータである。
【０１２８】
画像データＤｍは、ゲームの際に本体装置２のディスプレイ１２や据置型モニタ６の表示画面に画像（例えば、プレイヤキャラクタの画像、仮想オブジェクトの画像、フィールド画像、背景画像等）を表示するためのデータである。
【０１２９】
次に、図１６〜図１９を参照して、本実施形態における情報処理（ゲーム処理）の詳細な一例を説明する。図１６は、ゲームシステム１で実行されるゲーム処理の一例を示すフローチャートである。図１７は、図１６におけるステップＳ１２６において行われるメインゲーム処理の詳細の一例を示すサブルーチンである。図１８は、図１６におけるステップＳ１２７において行われるサブゲーム処理の前半の詳細の一例を示すサブルーチンである。図１９は、図１６におけるステップＳ１２７において行われるサブゲーム処理の後半の詳細の一例を示すサブルーチンである。本実施形態においては、図１６〜図１９に示す一連の処理は、プロセッサ８１が各種プログラムＰａに含まれる通信プログラムや所定のアプリケーションプログラム（ゲームプログラム）を実行することによって行われる。また、図１６〜図１９に示すゲーム処理が開始されるタイミングは任意である。
【０１３０】
なお、図１６〜図１９に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて（または代えて）別の処理が実行されてもよい。また、本実施形態では、上記フローチャートの各ステップの処理をプロセッサ８１が実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を、プロセッサ８１以外のプロセッサや専用回路が実行するようにしてもよい。また、本体装置２において実行される処理の一部は、本体装置２と通信可能な他の情報処理装置（例えば、本体装置２とネットワークを介して通信可能なサーバ）によって実行されてもよい。すなわち、図１６〜図１９に示す各処理は、本体装置２を含む複数の情報処理装置が協働することによって実行されてもよい。
【０１３１】
図１６において、プロセッサ８１は、ゲーム処理における初期設定を行い（ステップＳ１２０）、次のステップに処理を進める。例えば、上記初期設定では、プロセッサ８１は、以下に説明する処理を行うためのパラメータを初期化する。一例として、プロセッサ８１は、サブゲームフラグデータＤｈが示すサブゲームフラグ、ミニゲームフラグデータＤｉが示すミニゲームフラグ、および操作待ちフラグデータＤｊが示す操作待ちフラグをそれぞれオフに初期設定する。
【０１３２】
次に、プロセッサ８１は、左コントローラ３および／または右コントローラ４から操作データを取得して操作データＤａを更新し（ステップＳ１２１）、次のステップに処理を進める。
【０１３３】
次に、プロセッサ８１は、上記ステップＳ１２１において取得した操作データに基づいて、メインゲームおよびサブゲームをプレイするチーム編成を設定する処理を行い（ステップＳ１２２）、次のステップに処理を進める。ここで、プロセッサ８１は、メインゲームおよびサブゲームをプレイする複数のユーザからなるチームを少なくとも１つ含むチーム編成を設定し、当該複数のユーザがそれぞれ操作する複数のプレイヤキャラクタＰＣが属するキャラクタチームを設定する。そして、プロセッサ８１は、各キャラクタチームに属するプレイヤキャラクタＰＣの情報、各キャラクタチームに属する非プレイヤキャラクタＮＰＣの情報、当該プレイヤキャラクタＰＣの操作に用いられているコントローラの識別情報等を用いて、チーム編成データＤｄを更新する。したがって、上記チーム編成では、複数のユーザが操作する複数のプレイヤキャラクタＰＣが属する単一のキャラクタチームが設定されることもあり得るし、複数のユーザが操作する複数のプレイヤキャラクタＰＣが属するキャラクタチームが複数組設定されることもあり得るし、複数のユーザが操作する複数のプレイヤキャラクタＰＣが属するキャラクタチームとコンピュータ（プロセッサ８１）によって自動制御される非プレイヤキャラクタＮＰＣのみが属するキャラクタチームとが設定されることもあり得る。また、複数のユーザが操作する複数のプレイヤキャラクタＰＣが属するキャラクタチームには、コンピュータによって自動制御される非プレイヤキャラクタＮＰＣが属していてもよい。以下の説明においては、複数のユーザがそれぞれ操作する複数のプレイヤキャラクタＰＣが属するキャラクタチームがメインゲームおよびサブゲームを行う場合の処理について説明する。
【０１３４】
次に、プロセッサ８１は、チーム編成が決定されたか否かを判定する（ステップＳ１２３）。例えば、プロセッサ８１は、チーム編成が決定されたことを上記ステップＳ１２１において取得した操作データが示す場合、プロセッサ８１は、上記ステップＳ１２３において肯定判定する。そして、プロセッサ８１は、チーム編成が決定された場合、メインゲームプレイを行うためのゲームフィールドおよび当該ゲームフィールド上のプレイヤキャラクタＰＣおよび／または非プレイヤキャラクタＮＰＣの初期状態を設定してキャラクタ動作データＤｋを更新して、ステップＳ１２４に処理を進める。一方、プロセッサ８１は、チーム編成が決定されていない場合、ステップＳ１２１に戻って処理を繰り返す。
【０１３５】
ステップＳ１２４において、プロセッサ８１は、左コントローラ３および／または右コントローラ４から操作データを取得して操作データＤａを更新し、次のステップに処理を進める。
【０１３６】
次に、プロセッサ８１は、メインゲームを行うか否かを判定する（ステップＳ１２５）。例えば、プロセッサ８１は、サブゲームフラグデータＤｈが示すサブゲームフラグがオフに設定されている場合、上記ステップＳ１２５において肯定判定する。そして、プロセッサ８１は、メインゲームを行う場合、ステップＳ１２６に処理を進める。一方、プロセッサ８１は、サブゲームを行う場合、ステップＳ１２７に処理を進める。
【０１３７】
ステップＳ１２６において、プロセッサ８１は、メインゲーム処理を行い、ステップＳ１２８に処理を進める。以下、図１７を参照して、上記ステップＳ１２６において行われるメインゲーム処理の一例について説明する。なお、第２ゲーム実行手段は、第１ゲームとは別の第２ゲームを実行するものであり、一例としてステップＳ１２６の処理を行うプロセッサ８１に相当する。
【０１３８】
図１７において、プロセッサ８１は、メインゲームにおけるプレイヤキャラクタ動作処理を行い（ステップＳ１４１）、次のステップに処理を進める。例えば、プロセッサ８１は、上記ステップＳ１２４において取得した複数のユーザ（例えば、第１のユーザおよび第２のユーザ）の操作データがそれぞれ示す指示内容を設定し、当該指示内容に応じてメインゲームを行っているキャラクタチームに属する複数のプレイヤキャラクタＰＣ（例えば、第１のユーザが操作する第１のプレイヤキャラクタＰＣ１および第２のユーザが操作する第２のプレイヤキャラクタＰＣ２）を動作させ、複数のプレイヤキャラクタＰＣの仮想空間における位置、方向、姿勢、および動作等をそれぞれ設定してキャラクタ動作データＤｋを更新する。
【０１３９】
次に、プロセッサ８１は、メインゲームにおける非プレイヤキャラクタ動作処理を行い（ステップＳ１４２）、次のステップに処理を進める。例えば、プロセッサ８１は、上記ステップＳ１４１において設定されたプレイヤキャラクタＰＣの動作に応じてメインゲームを行っているキャラクタチームに属する複数の非プレイヤキャラクタＮＰＣ（例えば、非プレイヤキャラクタＮＰＣ１およびＮＰＣ２）を動作させ、複数の非プレイヤキャラクタＮＰＣの仮想空間における位置、方向、姿勢、および動作等をそれぞれ設定してキャラクタ動作データＤｋを更新する。
【０１４０】
次に、プロセッサ８１は、メインゲームを行っているキャラクタチームがサブゲームを実行する権利を取得したか否かを判定する（ステップＳ１４３）。例えば、プロセッサ８１は、メインゲームを行っているキャラクタチームに属するプレイヤキャラクタＰＣおよび非プレイヤキャラクタＮＰＣや当該キャラクタチームが動かす仮想オブジェクト（例えば、キャラクタチームが乗船しているラフト）等がアイテムＩと接触した場合、上記ステップＳ１４３において肯定判定する。そして、プロセッサ８１は、サブゲームを実行する権利を取得した場合、実行中のメインゲームを中断してステップＳ１４４に処理を進める。一方、プロセッサ８１は、サブゲームを実行する権利を取得していない場合、ステップＳ１４５に処理を進める。
【０１４１】
ステップＳ１４４において、プロセッサ８１は、サブゲームフラグをオンに設定し、ステップＳ１４５に処理を進める。例えば、プロセッサ８１は、サブゲームフラグデータＤｈが示すサブゲームフラグをオンに変更して更新する。
【０１４２】
ステップＳ１４５において、プロセッサ８１は、上記キャラクタチームのメインゲームに設定されている残り時間を所定時間減らして更新し、当該サブルーチンによる処理を終了する。例えば、プロセッサ８１は、残り時間データＤｅが示す残り時間からゲームシステム１で実行される処理の周期（例えば、１フレーム分に相当する時間）を減算し、当該減算後の残り時間を用いて残り時間データＤｅを更新する。
【０１４３】
図１６に戻り、プロセッサ８１は、上記ステップＳ１２５においてサブゲームを行うと判定した場合、サブゲーム処理を行い（ステップＳ１２７）、ステップＳ１２８に処理を進める。以下、図１８および図１９を参照して、上記ステップＳ１２７において行われるサブゲーム処理の一例について説明する。
【０１４４】
図１８において、プロセッサ８１は、現時点が上記キャラクタチームのサブゲームを開始するタイミングか否かを判定する（ステップＳ１５１）。例えば、プロセッサ８１は、現時点がサブゲームフラグデータＤｈのサブゲームフラグをオンに変更した直後である場合、上記ステップＳ１５１において肯定判定する。そして、プロセッサ８１は、現時点がサブゲームを開始するタイミングである場合、ステップＳ１５２に処理を進める。一方、プロセッサ８１は、既にサブゲームが開始されている場合、ステップＳ１５３に処理を進める。
【０１４５】
ステップＳ１５２において、プロセッサ８１は、上記キャラクタチームの中断しているメインゲームの状況を記憶するともに、当該キャラクタチームが行うミニゲームの初期設定を行い、ステップＳ１５３に処理を進める。例えば、プロセッサ８１は、ミニゲームプレイを行うためのゲームフィールドおよび当該ゲームフィールド上に上記キャラクタチームに属するプレイヤキャラクタＰＣおよび／または非プレイヤキャラクタＮＰＣの初期状態を必要に応じて設定してキャラクタ動作データＤｋを更新する。また、プロセッサ８１は、ミニゲームフラグデータＤｉが示すミニゲームフラグをオンに変更して初期設定する。
【０１４６】
ステップＳ１５３において、プロセッサ８１は、ミニゲームフラグがオンに設定されているか否かを判定する。例えば、プロセッサ８１は、ミニゲームフラグデータＤｉが示すミニゲームフラグがオンに設定されている場合、上記ステップＳ１５３において肯定判定する。そして、プロセッサ８１は、ミニゲームフラグがオンに設定されている場合、ステップＳ１５４に処理を進める。一方、プロセッサ８１は、ミニゲームフラグがオフに設定されている場合、ステップＳ１７１（図１９参照）に処理を進める。
【０１４７】
ステップＳ１５４において、プロセッサ８１は、ミニゲームを行っているキャラクタチームに属するプレイヤキャラクタ動作処理を行い、次のステップに処理を進める。例えば、プロセッサ８１は、上記ステップＳ１２４において取得した複数のユーザ（例えば、第１のユーザおよび第２のユーザ）の操作データがそれぞれ示す指示内容を設定し、当該指示内容に応じてミニゲームを行っているキャラクタチームに属する複数のプレイヤキャラクタＰＣ（例えば、第１のユーザが操作する第１のプレイヤキャラクタＰＣ１および第２のユーザが操作する第２のプレイヤキャラクタＰＣ２）を動作させ、複数のプレイヤキャラクタＰＣの仮想空間における位置、方向、姿勢、および動作等をそれぞれ設定してキャラクタ動作データＤｋを更新する。
【０１４８】
次に、プロセッサ８１は、ミニゲームを行っているキャラクタチームに属する非プレイヤキャラクタ動作処理を行い（ステップＳ１５５）、次のステップに処理を進める。例えば、プロセッサ８１は、上記ステップＳ１５４において設定されたプレイヤキャラクタＰＣの動作に応じてミニゲームを行っているキャラクタチームに属する複数の非プレイヤキャラクタＮＰＣ（例えば、非プレイヤキャラクタＮＰＣ１およびＮＰＣ２）を動作させ、複数の非プレイヤキャラクタＮＰＣの仮想空間における位置、方向、姿勢、および動作等をそれぞれ設定してキャラクタ動作データＤｋを更新する。なお、第１ゲーム実行手段は、複数のユーザからなるチームを少なくとも１つ含むチーム編成を設定し、当該チームに属する少なくとも１人のユーザによりプレイされる第１ゲームを実行するものであり、一例としてステップＳ１５２、Ｓ１５４、およびＳ１５５の処理を行うプロセッサ８１に相当する。
【０１４９】
次に、プロセッサ８１は、上記キャラクタチームのミニゲームが終了したか否かを判定する（ステップＳ１５６）。上記ステップＳ１５６においてミニゲームを終了する条件としては、例えば、上記ミニゲームの結果が確定したことや、ユーザがミニゲームを終了する操作を行ったこと等がある。プロセッサ８１は、ミニゲームを終了する場合にステップＳ１５７に処理を進め、ミニゲームを終了しない場合にステップＳ１７１（図１９参照）に処理を進める。
【０１５０】
ステップＳ１５７において、プロセッサ８１は、上記キャラクタチームのミニゲームの結果を報知してミニゲームを終了する処理を行って、次のステップに処理を進める。例えば、プロセッサ８１は、ミニゲームをクリアしたランクまたはクリアできなかった結果を算出して、当該クリアしたランクやクリアできなかった上記キャラクタチームの結果を示す画像を生成し、後述するステップＳ１２８の表示制御処理において当該画像を表示装置（例えば、据置型モニタ６）に表示する（図１１参照）。また、プロセッサ８１は、ミニゲームフラグデータＤｉが示すミニゲームフラグをオフに変更して上記キャラクタチームのミニゲームを終了する処理を行う。
【０１５１】
次に、プロセッサ８１は、上記キャラクタチームのメインゲームに設定されている残り時間に当該キャラクタチームのミニゲームの結果に基づいた時間を加算して更新し（ステップＳ１５８）、次のステップに処理を進める。例えば、プロセッサ８１は、上記ミニゲームの結果が残り時間の追加が行われるものである場合、残り時間データＤｅが示す残り時間に当該追加される時間を加算し、当該加算後の残り時間を用いて残り時間データＤｅを更新する。また、プロセッサ８１は、上記ミニゲームの結果に応じて残り時間が加算される場合、当該残り時間が上記キャラクタチームに対して加算されることを報知する画像を生成し、後述するステップＳ１２８の表示制御処理において当該画像を表示装置（例えば、据置型モニタ６）に表示する（図１１参照）。なお、上記ミニゲームの結果によっては、メインゲームに設定されている残り時間が加算されないこともある。その場合、プロセッサ８１は、残り時間データＤｅを更新することなく上記残り時間が加算されることを上記キャラクタチームに報知する画像の生成も行わない。また、上記キャラクタチームのメインゲームに設定されている残り時間に当該キャラクタチームのミニゲームの結果に基づいた時間が実際に加算された状態をユーザに示すタイミングは、当該メインゲームが再開される直前や当該ミニゲームの再開直後であってもよい。
【０１５２】
次に、プロセッサ８１は、上記キャラクタチームのミニゲームの結果が好成績であったか否かを判定する（ステップＳ１５９）。ここで、ミニゲームの結果が好成績であった場合とは、当該ミニゲームにおいて閾値以上の成果（所定のランク以上でのクリアや所定の閾値以上の得点の取得）が得られた場合や当該ミニゲームにおいて上記キャラクタチームが勝利した場合等が考えられ、これらの条件を満たした場合、プロセッサ８１は、上記ステップＳ１５９において肯定判定する。そして、プロセッサ８１は、ミニゲームの結果が好成績であった場合、ステップＳ１６０に処理を進める。一方、プロセッサ８１は、ミニゲームの結果が好成績でなかった場合、ステップＳ１６１に処理を進める。
【０１５３】
ステップＳ１６０において、プロセッサ８１は、操作待ちフラグをオンに変更して、ステップＳ１７１（図１９参照）に処理を進める。例えば、プロセッサ８１は、操作待ちフラグデータＤｊが示す操作待ちフラグをオンに変更して更新する。
【０１５４】
一方、ステップＳ１６１において、プロセッサ８１は、サブゲームフラグをオフに設定し、当該サブルーチンによる処理を終了する。例えば、プロセッサ８１は、サブゲームフラグデータＤｈが示すサブゲームフラグをオフに変更して更新する。また、プロセッサ８１は、中断している上記キャラクタチームのメインゲームの状況を読み出して当該メインゲームを再開する処理を行う。なお、プロセッサ８１は、上記キャラクタチームのメインゲームの中断時点と比較して、残り時間データＤｅが示す残り時間が変化している場合、当該変化したことを上記キャラクタチームに報知するための残り時間通知画像Ｔを生成し、後述するステップＳ１２８の表示制御処理において当該画像を表示装置（例えば、据置型モニタ６）に表示する（図１４参照）。
【０１５５】
図１９に進み、ステップＳ１７１において、プロセッサ８１は、操作待ちフラグがオンに設定されているか否かを判定する。例えば、プロセッサ８１は、操作待ちフラグデータＤｊが示す操作待ちフラグがオンに設定されている場合、上記ステップＳ１７１において肯定判定する。そして、プロセッサ８１は、操作待ちフラグがオンに設定されている場合、ステップＳ１７２に処理を進める。一方、プロセッサ８１は、操作待ちフラグがオフに設定されている場合、当該サブルーチンによる処理を終了する。
【０１５６】
ステップＳ１７２において、プロセッサ８１は、上記キャラクタチームのユーザに協調操作の操作内容を通知する処理を行い、次のステップに処理を進める。例えば、ユーザが把持している左コントローラ３または右コントローラ４を前に突き出すように動かす操作が協調操作の操作内容である場合、上記キャラクタチームのユーザに当該操作内容を示す協調操作通知画像Ｎを生成し、後述するステップＳ１２８の表示制御処理において当該画像を表示装置（例えば、据置型モニタ６）に表示する（図１１、図１２参照）。なお、第１通知手段は、第１ゲーム開始前、第１ゲーム中断時、および第１ゲーム終了後の少なくともいずれかにおいて、コントローラを動かす操作をチームのユーザに促す第１通知を、画像および音の少なくとも一方により行うための信号を出力するものであり、一例としてステップＳ１７２およびＳ１７５の処理を行うプロセッサ８１に相当する。
【０１５７】
次に、プロセッサ８１は、上記キャラクタチームのユーザにおける協調操作を待っている操作待ち時間を所定時間増やして更新し（ステップＳ１７３）、次のステップに処理を進める。例えば、プロセッサ８１は、操作待ち時間データＤｆが示す操作待ち時間にゲームシステム１で実行される処理の周期（例えば、１フレーム分に相当する時間）を加算し、当該加算後の操作待ち時間を用いて操作待ち時間データＤｆを更新する。
【０１５８】
次に、プロセッサ８１は、現時点が上記キャラクタチームのユーザにおける協調操作の操作タイミングを示す号令を出す号令タイミングであるか否かを判定する（ステップＳ１７４）。例えば、プロセッサ８１は、操作待ち時間データＤｆが示す操作待ち時間が、予め定められた号令タイミングに相当する時間である場合、上記ステップＳ１７４において肯定判定する。そして、プロセッサ８１は、現時点が号令タイミングである場合、ステップＳ１７５に処理を進める。一方、プロセッサ８１は、現時点が号令タイミングでない場合、ステップＳ１７７に処理を進める。
【０１５９】
ステップＳ１７５において、プロセッサ８１は、協調操作の操作タイミングを示す協調操作号令を上記キャラクタチームのユーザに通知する処理を行い、次のステップに処理を進める。例えば、プロセッサ８１は、操作待ち時間データＤｆが示す操作待ち時間に応じて、上記キャラクタチームに協調操作の準備を促すための通知（図１１に例示する表示「せーの」）または上記キャラクタチームに協調操作を行うことを促すための通知（図１２に例示する表示「イエーイ」）を示す協調操作通知画像Ｎを生成し、後述するステップＳ１２８の表示制御処理において当該画像を表示装置（例えば、据置型モニタ６）に表示する（図１１、図１２参照）。
【０１６０】
次に、プロセッサ８１は、振動データを生成する処理を行い（ステップＳ１７６）、ステップＳ１７７に処理を進める。例えば、ＣＰＵ８１は、協調操作の対象であることを示す振動波形（振動パターン）を設定し、上記キャラクタチームに属するプレイヤキャラクタＰＣを操作しているコントローラを振動させるための振動データを当該振動波形に基づいて生成して、振動データＤｇを更新する。一例として、第１のユーザが操作している左コントローラ３および第２のユーザが操作している右コントローラ４が協調操作の対象である場合、協調操作の対象であることを示す振動波形（振動パターン）で振動させる振動データが第１のユーザが操作している左コントローラ３および第２のユーザが操作している右コントローラ４にそれぞれ送信する振動データとして振動データＤｇに設定される。そして、後述するステップＳ１２９の送信処理において当該振動データが協調操作の対象の左コントローラ３および右コントローラ４にそれぞれ送信されることによって、第１のユーザが操作している左コントローラ３および第２のユーザが操作している右コントローラ４が上記振動パターンで振動することになる。なお、第２通知手段は、チームに属するユーザが操作するコントローラに対して、当該コントローラに接触する接触体を刺激する第２通知を第１通知とともに行うための信号を出力するものであり、一例としてステップＳ１７６の処理を行うプロセッサ８１に相当する。
【０１６１】
ステップＳ１７７において、プロセッサ８１は、操作判定を行い、次のステップに処理を進める。例えば、プロセッサ８１は、協調操作の対象となっているコントローラを用いた操作内容を解析する。一例として、プロセッサ８１は、角速度データＤｂおよび加速度データＤｃを参照して、協調操作の対象となっているコントローラに生じている加速度およびその履歴／または当該コントローラに生じている角速度およびその履歴に基づいて、当該コントローラを用いた操作内容を解析する。
【０１６２】
次に、プロセッサ８１は、協調操作の対象となっているコントローラを用いて協調操作が行われたか否かを判定する（ステップＳ１７８）。例えば、プロセッサ８１は、左コントローラ３または右コントローラ４を前に突き出すように動かす操作が協調操作の操作内容である場合、加速度の変化が第１の閾値より大きい、かつ、所定時間前（例えば、２０フレーム前）からの角速度の変化が第２の閾値より小さいコントローラについて、協調操作が行われたと判定する。そして、プロセッサ８１は、協調操作の対象となっているコントローラの中に現時点で協調操作が行われていると判定されたコントローラが少なくとも１つある場合、ステップＳ１７９に処理を進める。一方、プロセッサ８１は、協調操作の対象となっているコントローラの中に現時点で協調操作が行われていると判定されたコントローラがない場合、ステップＳ１８０に処理を進める。なお、操作判定手段は、チームに属するユーザが操作する少なくとも１つのコントローラにおいて、操作が行われたか否かの判定を行うものであり、一例としてステップＳ１７７およびＳ１７６の処理を行うプロセッサ８１に相当する。
【０１６３】
ステップＳ１７９において、プロセッサ８１は、他のユーザの協調操作を待つ動作に、協調操作を行ったと判定されたコントローラによって操作されているプレイヤキャラクタＰＣの動作を設定し、ステップＳ１８０に処理を進める。一例として、プロセッサ８１は、協調操作の成功時におけるプレイヤキャラクタＰＣの動作が互いにハイタッチする動作である場合、プレイヤキャラクタＰＣがジャンプする前のかがむ動作を、他のユーザの協調操作を待つ動作として設定し、キャラクタ動作データＤｋを更新する。
【０１６４】
ステップＳ１８０において、プロセッサ８１は、上記キャラクタチームのユーザ全員における協調操作が成功したか否かを判定する。例えば、プロセッサ８１は、上記キャラクタチームのユーザが操作するコントローラ全てに対して協調操作が行われたと上記ステップＳ１７８において判定された場合、上記ステップＳ１８０において肯定判定する。そして、プロセッサ８１は、上記キャラクタチームのユーザ全員における協調操作が成功した場合、ステップＳ１８１に処理を進める。一方、プロセッサ８１は、上記キャラクタチームのユーザ全員における協調操作が成功していない場合、ステップＳ１８４に処理を進める。なお、成功判定手段は、判定に基づいて、成功条件が満たされたか否かを判定する。ゲーム演出手段は、成功条件が満たされたと判定された場合に、所定のゲーム演出を行うものであり、一例としてステップＳ１８０の処理を行うプロセッサ８１に相当する。
【０１６５】
ステップＳ１８１において、プロセッサ８１は、協調操作成功演出処理を行い、次のステップに処理を進める。例えば、プロセッサ８１は、上記キャラクタチームに属するキャラクタが、協調操作におけるユーザ動作に対応して動作するようにキャラクタ動作データＤｋを更新する。一例として、プロセッサ８１は、コントローラを前に突き出すような協調操作が行われた場合、上記キャラクタチームに属するプレイヤキャラクタＰＣ１〜ＰＣ２および非プレイヤキャラクタＮＰＣ１〜ＮＰＣ２が画面中央に集まってそれぞれ協調操作におけるユーザ動作を模した動作（図１３参照）を行うように、キャラクタ動作データＤｋを更新する。
【０１６６】
次に、プロセッサ８１は、上記キャラクタチームのメインゲームに設定されている残り時間に当該協調操作成功に基づいた時間を加算して更新し（ステップＳ１８２）、次のステップに処理を進める。例えば、プロセッサ８１は、残り時間データＤｅが示す残り時間に当該協調操作成功に基づいた時間を加算し、当該加算後の残り時間を用いて残り時間データＤｅを更新する。また、プロセッサ８１は、残り時間が上記キャラクタチームに対して加算されることを報知する画像を生成し、後述するステップＳ１２８の表示制御処理において当該画像を表示装置（例えば、据置型モニタ６）に表示する（図１３参照）。
【０１６７】
次に、プロセッサ８１は、操作待ちフラグおよびサブゲームフラグをそれぞれオフに設定し（ステップＳ１８３）、当該サブルーチンによる処理を終了する。例えば、プロセッサ８１は、操作待ちフラグデータＤｊが示す操作待ちフラグをオフに変更し、サブゲームフラグデータＤｈが示すサブゲームフラグをオフに変更して、それぞれ更新する。また、プロセッサ８１は、操作待ち時間を０に初期化して操作待ち時間データＤｆを更新する。さらに、プロセッサ８１は、中断している上記キャラクタチームのメインゲームの状況を読み出して当該メインゲームを再開する処理を行う。また、プロセッサ８１は、残り時間データＤｅが示す残り時間が加算されたことを上記キャラクタチームに報知するための残り時間通知画像Ｔを生成し、後述するステップＳ１２８の表示制御処理において当該画像を表示装置（例えば、据置型モニタ６）に表示する（図１４参照）。
【０１６８】
一方、上記ステップＳ１８０において上記キャラクタチームのユーザ全員における協調操作がまだ成功していないと判定された場合、プロセッサ８１は、操作待ち時間が終了したか否かを判定する（ステップＳ１８４）。例えば、プロセッサ８１は、操作待ち時間データＤｆが示す操作待ち時間が、予め定められた閾時間に到達している場合、上記ステップＳ１８４において肯定判定する。そして、プロセッサ８１は、操作待ち時間が終了した場合、ステップＳ１８５に処理を進める。一方、プロセッサ８１は、操作待ち時間が終了していない場合、当該サブルーチンによる処理を終了する。
【０１６９】
ステップＳ１８５において、プロセッサ８１は、協調操作失敗演出処理を行い、次のステップに処理を進める。例えば、プロセッサ８１は、上記キャラクタチームに属するキャラクタ全員が残念がる動作を行うように、キャラクタ動作データＤｋを更新する。
【０１７０】
次に、プロセッサ８１は、操作待ちフラグおよびサブゲームフラグをそれぞれオフに設定し（ステップＳ１８６）、当該サブルーチンによる処理を終了する。例えば、プロセッサ８１は、操作待ちフラグデータＤｊが示す操作待ちフラグをオフに変更し、サブゲームフラグデータＤｈが示すサブゲームフラグをオフに変更して、それぞれ更新する。また、プロセッサ８１は、操作待ち時間を０に初期化して操作待ち時間データＤｆを更新する。さらに、プロセッサ８１は、中断している上記キャラクタチームのメインゲームの状況を読み出して当該メインゲームを再開する処理を行う。また、プロセッサ８１は、残り時間データＤｅが示す残り時間が加算されたことを上記キャラクタチームに報知するための残り時間通知画像Ｔを生成し、後述するステップＳ１２８の表示制御処理において当該画像を表示装置（例えば、据置型モニタ６）に表示する（図１４参照）。
【０１７１】
図１６に戻り、ステップＳ１２８において、プロセッサ８１は、表示制御処理を行い、次のステップに処理を進める。例えば、プロセッサ８１は、キャラクタ動作データＤｋを用いて、ゲームフィールド上にプレイヤキャラクタＰＣや非プレイヤキャラクタＮＰＣ等を配置する。そして、プロセッサ８１は、所定の位置に配置された仮想カメラからゲームフィールドを見た仮想空間画像を生成し、当該仮想空間画像を表示装置（例えば、据置型モニタ６）の表示画面に表示する処理を行う。また、プロセッサ８１は、上述した処理において、各ゲームの結果を示す画像、メインゲームの残り時間が加算されることを示す画像、残り時間通知画像Ｔ、協調操作通知画像Ｎ等の表示画像が生成されている場合、上記仮想空間画像に当該画像が含まれるように当該仮想空間画像を合成し、当該仮想空間画像を表示装置の表示画面に表示する処理を行う。
【０１７２】
次に、プロセッサ８１は、データ送信周期毎に左コントローラ３および右コントローラ４へデータを出力する処理を行い（ステップＳ１２９）、次のステップに処理を進める。例えば、プロセッサ８１は、コントローラへ出力するための振動データＤｇに格納されている場合、当該振動データＤｇに格納されている振動データを、当該振動データを送信する対象となる送信先のコントローラへ出力する処理を行う。このように各コントローラに振動データを出力することによって、当該振動データを取得した左コントローラ３および／または右コントローラ４は、それぞれの振動データに応じた振動波形で振動する。
【０１７３】
次に、プロセッサ８１は、メインゲームを終了するか否かを判定する（ステップＳ１３０）。上記ステップＳ１３０においてゲームを終了する条件としては、例えば、上記メインゲームの結果が確定したことや、残り時間データＤｅが示す上記メインゲームにおける残り時間が０となったことや、ユーザがメインゲームを終了する操作を行ったこと等がある。プロセッサ８１は、メインゲームを終了しない場合に上記ステップＳ１２４に戻って処理を繰り返し、メインゲームを終了する場合に当該フローチャートによる処理を終了する。以降、ステップＳ１２４〜ステップＳ１３０の一連の処理は、ステップＳ１３０でメインゲームを終了すると判定されるまで繰り返し実行される。
【０１７４】
このように、本実施例においては、複数のユーザがそれぞれ操作するプレイヤキャラクタＰＣが属するキャラクタチームによってプレイされるゲームにおいて、協調操作を当該ユーザに促す画像によって通知するとともに、当該ユーザが操作するコントローラへの振動によっても通知され、上記複数のユーザによる協調操作が成功した場合に当該協調操作の成功に応じた演出が行われるため、チーム編成がなされるゲームにおけるユーザの興趣性を高めることができる。
【０１７５】
なお、上述したフローチャートによる処理例では、複数のユーザがそれぞれ操作する複数のプレイヤキャラクタＰＣが属するキャラクタチームの１つがメインゲームおよびサブゲームを行う場合を用いたが、複数のユーザがそれぞれ操作する複数のプレイヤキャラクタＰＣが属するキャラクタチームが複数設定され、当該キャラクタチーム同士がメインゲームおよびサブゲームに参加する形態も考えられる。この場合、何れか一方のキャラクタチームのみがサブゲームを行う権利を取得したり、ミニゲームにおいて一方のキャラクタチームが好成績で他方のキャラクタチームが不成績となったりすることも考えられる。このように、複数のユーザが操作するキャラクタチームが複数参加する場合は、上記フローチャートにおける各ステップをキャラクタチーム毎に並行して行うとともに、異なる結果となる場合に両方の結果を同じ表示画面に表示したり、一方のキャラクタチームが他方のキャラクタチームのゲーム進行を待ったりすることによって、同様に上述した処理を実現することが可能となる。
【０１７６】
また、上述した説明では、操作判定処理を本体装置２側で行う例を用いたが、当該操作判定処理の少なくとも一部を左コントローラ３および／または右コントローラ４において行ってもよい。例えば、左コントローラ３の加速度、角速度、姿勢を算出する処理、左コントローラ３の軸方向や軸方向の変化量を算出する処理、左コントローラ３に生じている加速度（重力加速度）を算出する処理等を左コントローラ３内で行ってもよいし、右コントローラ４の加速度、角速度、姿勢を算出する処理、右コントローラ４の軸方向や軸方向の変化量を算出する処理、右コントローラ４に生じている加速度（重力加速度）を算出する処理等を右コントローラ４内で行ってもよい。
【０１７７】
また、上述した実施例において、左コントローラ３や右コントローラ４の動きや姿勢を検出する方法については、単なる一例であって、他の方法や他のデータを用いて左コントローラ３や右コントローラ４の動きや姿勢を検出してもよい。また、上述した実施例では、左コントローラ３や右コントローラ４を用いた操作に応じたゲーム画像を据置型モニタ６に表示しているが、本体装置２のディスプレイ１２に表示してもよい。また、プレイヤキャラクタＰＣの動作を制御するためのコントローラは、左コントローラ３または右コントローラ４だけでなく、他のコントローラでもよい。
【０１７８】
また、付加装置（例えば、クレードル）は、本体装置２を着脱可能な任意の付加装置であってよい。付加装置は、本実施形態のように、本体装置２に対する充電を行う機能を有していてもよいし、有していなくてもよい。
【０１７９】
また、ゲームシステム１は、どのような装置であってもよく、携帯型のゲーム装置、任意の携帯型電子機器（ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、携帯電話、パーソナルコンピュータ、カメラ、タブレット等）等であってもよい。
【０１８０】
また、上述した説明では情報処理（ゲーム処理）をゲームシステム１でそれぞれ行う例を用いたが、上記処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、ゲームシステム１がさらに他の装置（例えば、別のサーバ、他の画像表示装置、他のゲーム装置、他の携帯端末）と通信可能に構成されている場合、上記処理ステップは、さらに当該他の装置が協働することによって実行してもよい。このように、上記処理ステップの少なくとも一部を他の装置で行うことによって、上述した処理と同様の処理が可能となる。また、上述した情報処理（ゲーム処理）は、少なくとも１つの情報処理装置により構成される情報処理システムに含まれる１つのプロセッサまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施例においては、ゲームシステム１のプロセッサ８１が所定のプログラムを実行することによって情報処理を行うことが可能であるが、ゲームシステム１が備える専用回路によって上記処理の一部または全部が行われてもよい。
【０１８１】
ここで、上述した変形例によれば、いわゆるクラウドコンピューティングのシステム形態や分散型の広域ネットワークおよびローカルネットワークのシステム形態でも本発明を実現することが可能となる。例えば、分散型のローカルネットワークのシステム形態では、据置型の情報処理装置（据置型のゲーム装置）と携帯型の情報処理装置（携帯型のゲーム装置）との間で上記処理を協働により実行することも可能となる。なお、これらのシステム形態では、上述した処理をどの装置で行うかについては特に限定されず、どのような処理分担をしたとしても本発明を実現できることは言うまでもない。
【０１８２】
また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる条件等は、単なる一例に過ぎず他の順序、値、条件であっても、本実施例を実現できることは言うまでもない。
【０１８３】
また、上記プログラムは、外部メモリ等の外部記憶媒体を通じてゲームシステム１に供給されるだけでなく、有線または無線の通信回線を通じて当該装置に供給されてもよい。また、上記プログラムは、当該装置内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、これらの記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
【０１８４】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。また、当業者は、本発明の具体的な実施例の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書（定義を含めて）が優先する。
【産業上の利用可能性】
【０１８５】
以上のように、本発明は、チーム編成がなされるゲームにおけるユーザの興趣性を高めること等ができる情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法等として利用することができる。
【符号の説明】
【０１８６】
１…情報処理システム
２…本体装置
３…左コントローラ
４…右コントローラ
６…据置型モニタ
１１…ハウジング
１２…ディスプレイ
１７…左側端子
２１…右側端子
２７…下側端子
４２、６４…端子
８１…プロセッサ
８２…ネットワーク通信部
８３…コントローラ通信部
８５…ＤＲＡＭ
１０１、１１１…通信制御部
１０４、１１４…加速度センサ
１０５、１１５…角速度センサ
【図１】
2019208896.tif 000003
【図２】
2019208896.tif 000004
【図３】
2019208896.tif 000005
【図４】
2019208896.tif 000006
【図５】
2019208896.tif 000007
【図６】
2019208896.tif 000008
【図７】
2019208896.tif 000009
【図８】
2019208896.tif 000010
【図９】
2019208896.tif 000011
【図１０】
2019208896.tif 000012
【図１１】
2019208896.tif 000013
【図１２】
2019208896.tif 000014
【図１３】
2019208896.tif 000015
【図１４】
2019208896.tif 000016
【図１５】
2019208896.tif 000017
【図１６】
2019208896.tif 000018
【図１７】
2019208896.tif 000019
【図１８】
2019208896.tif 000020
【図１９】
2019208896.tif 000021