(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-21
(45)【発行日】2023-03-02
(54)【発明の名称】ゲームプログラム、ゲームシステム、情報処理装置、および、情報処理方法
(51)【国際特許分類】
A63F 13/55 20140101AFI20230222BHJP
A63F 13/843 20140101ALI20230222BHJP
A63F 13/211 20140101ALI20230222BHJP
A63F 13/5372 20140101ALI20230222BHJP
A63F 13/2145 20140101ALI20230222BHJP
A63F 13/426 20140101ALI20230222BHJP
G06F 3/04842 20220101ALI20230222BHJP
【FI】
A63F13/55
A63F13/843
A63F13/211
A63F13/5372
A63F13/2145
A63F13/426
G06F3/04842
(21)【出願番号】P 2020146669
(22)【出願日】2020-09-01
【審査請求日】2021-03-09
(32)【優先日】2020-08-27
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】100158780
【氏名又は名称】寺本 亮
(74)【代理人】
【識別番号】100121359
【氏名又は名称】小沢 昌弘
(74)【代理人】
【識別番号】100130269
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】元倉 健太
(72)【発明者】
【氏名】平竹 晋也
(72)【発明者】
【氏名】安藤 勝康
(72)【発明者】
【氏名】ジョン ジョンソン
(72)【発明者】
【氏名】ブランドン デリー
【審査官】池田 剛志
(56)【参考文献】
【文献】特開2006-055616(JP,A)
【文献】特開2013-255607(JP,A)
【文献】特開2020-032233(JP,A)
【文献】特開2010-155055(JP,A)
【文献】特表2014-529792(JP,A)
【文献】特開2018-019894(JP,A)
【文献】特開2009-061321(JP,A)
【文献】特開2005-152509(JP,A)
【文献】米国特許出願公開第2020/0269129(US,A1)
【文献】米国特許出願公開第2020/0254335(US,A1)
【文献】特開2008-125847(JP,A)
【文献】「[ルイージマンション3]二人プレイのやり方!ストーリーを2人でやるには」,みんな一緒に前進ブログ [online],2020年05月17日,<https://mini4blog.xyz/luigi-mansion3-how-to-play-two-people/>,[2022年4月20日検索]
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-13/98
A63F 9/24
(57)【特許請求の範囲】
【請求項1】
プレイヤ毎に割り当てられた操作入力に基づいて情報処理を行う情報処理装置で実行されるゲームプログラムであって、前記情報処理装置のコンピュータに、
第1のプレイヤに割り当てられた操作入力に基づいてゲームをプレイさせる第1モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクトを仮想空間内で制御させると共に、ゲーム画面に表示されるポインタを制御させ、
前記仮想空間内において、第2のキャラクタオブジェクトを前記仮想空間内の状況に応じて自動で制御させると共に、当該第2のキャラクタオブジェクト
を前記ポインタが示す前記仮想空間内の位置
へ移動させて前記第2のキャラクタオブジェクトに前記位置に対して所定のアクションを行わせ、
又は、前記第2のキャラクタオブジェクトを前記位置へ移動させずに前記第2のキャラクタオブジェクトに前記位置に対して前記所定のアクションを行わせ、
前記第1のプレイヤに割り当てられた操作入力と第2のプレイヤに割り当てられた操作入力とに基づいて前記ゲームをプレイさせる第2モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第1のキャラクタオブジェクトを制御させ、
前記第2のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第2のキャラクタオブジェクトを制御させる、ゲームプログラム。
【請求項2】
前記第1のプレイヤに割り当てられた操作入力には、慣性センサからの出力に応じた慣性データが少なくとも含まれ、
前記第1モードにおいて、前記慣性データに基づいて前記ポインタの位置が制御される、請求項1に記載のゲームプログラム。
【請求項3】
前記第1のプレイヤに割り当てられた操作入力には、タッチパネルに対する入力に応じたタッチデータが少なくとも含まれ、
前記第1モードにおいて、前記タッチデータに基づいて前記ポインタの位置が制御される、請求項1または2に記載のゲームプログラム。
【請求項4】
前記第1のプレイヤに割り当てられた操作入力には第1の方向入力が少なくとも含まれ、前記第2のプレイヤに割り当てられた操作入力には第2の方向入力が少なくとも含まれ、
前記第1モードにおいて、前記第1のキャラクタオブジェクトは前記第1の方向入力に基づいて移動制御され、
前記第2モードにおいて、前記第1のキャラクタオブジェクトは前記第1の方向入力に基づいて移動制御され、前記第2のキャラクタオブジェクトは前記第2の方向入力に基づいて移動制御される、請求項1から3のいずれかに記載のゲームプログラム。
【請求項5】
前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記ポインタが示す前記仮想空間内の位置にオブジェクトが存在する場合、当該オブジェクトに対して前記所定のアクションを行う、請求項1から4のいずれかに記載のゲームプログラム。
【請求項6】
前記第2のキャラクタオブジェクトは、前記オブジェクトの種類に応じて異なるアクションを行う、請求項5に記載のゲームプログラム。
【請求項7】
前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記所定のアクションとして、前記ポインタが示す前記仮想空間内の位置に移動する、請求項1から6のいずれかに記載のゲームプログラム。
【請求項8】
前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記第1のプレイヤに割り当てられた操作入力に含まれる指示に応じて、前記所定のアクションを行う、請求項1から7のいずれかに記載のゲームプログラム。
【請求項9】
前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記第1のキャラクタオブジェクトの位置に応じて前記仮想空間の所定範囲を自動で移動し、前記第1のプレイヤに割り当てられた操作入力に含まれる指示に応じて、前記ポインタが示す前記仮想空間内の位置に対して前記所定のアクションを行う、請求項1から8のいずれかに記載のゲームプログラム。
【請求項10】
プレイヤ毎に割り当てられた操作入力に基づいて情報処理を行う少なくとも1つのプロセッサを備えるゲームシステムであって、
前記プロセッサは、
第1のプレイヤに割り当てられた操作入力に基づいてゲームをプレイさせる第1モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクトを仮想空間内で制御すると共に、ゲーム画面に表示されるポインタを制御し、
前記仮想空間内において、第2のキャラクタオブジェクトを前記仮想空間内の状況に応じて自動で制御すると共に、当該第2のキャラクタオブジェクト
を前記ポインタが示す前記仮想空間内の位置
へ移動させて前記第2のキャラクタオブジェクトに前記位置に対して所定のアクションを行わせ、
又は、前記第2のキャラクタオブジェクトを前記位置へ移動させずに前記第2のキャラクタオブジェクトに前記位置に対して前記所定のアクションを行わせ、
前記第1のプレイヤに割り当てられた操作入力と第2のプレイヤに割り当てられた操作入力とに基づいて前記ゲームをプレイさせる第2モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第1のキャラクタオブジェクトを制御し、
前記第2のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第2のキャラクタオブジェクトを制御する、ゲームシステム。
【請求項11】
前記第1のプレイヤに割り当てられた操作入力には、慣性センサからの出力に応じた慣性データが少なくとも含まれ、
前記第1モードにおいて、前記慣性データに基づいて前記ポインタの位置が制御される、請求項10に記載のゲームシステム。
【請求項12】
前記第1のプレイヤに割り当てられた操作入力には、タッチパネルに対する入力に応じたタッチデータが少なくとも含まれ、
前記第1モードにおいて、前記タッチデータに基づいて前記ポインタの位置が制御される、請求項10または11に記載のゲームシステム。
【請求項13】
前記第1のプレイヤに割り当てられた操作入力には第1の方向入力が少なくとも含まれ、前記第2のプレイヤに割り当てられた操作入力には第2の方向入力が少なくとも含まれ、
前記第1モードにおいて、前記第1のキャラクタオブジェクトは前記第1の方向入力に基づいて移動制御され、
前記第2モードにおいて、前記第1のキャラクタオブジェクトは前記第1の方向入力に基づいて移動制御され、前記第2のキャラクタオブジェクトは前記第2の方向入力に基づいて移動制御される、請求項10から12のいずれかに記載のゲームシステム。
【請求項14】
前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記ポインタが示す前記仮想空間内の位置にオブジェクトが存在する場合、当該オブジェクトに対して前記所定のアクションを行う、請求項10から13のいずれかに記載のゲームシステム。
【請求項15】
前記第2のキャラクタオブジェクトは、前記オブジェクトの種類に応じて異なるアクションを行う、請求項14に記載のゲームシステム。
【請求項16】
前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記所定のアクションとして、前記ポインタが示す前記仮想空間内の位置に移動する、請求項10から15のいずれかに記載のゲームシステム。
【請求項17】
前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記第1のプレイヤに割り当てられた操作入力に含まれる指示に応じて、前記所定のアクションを行う、請求項10から16のいずれかに記載のゲームシステム。
【請求項18】
前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記第1のキャラクタオブジェクトの位置に応じて前記仮想空間の所定範囲を自動で移動し、前記第1のプレイヤに割り当てられた操作入力に含まれる指示に応じて、前記ポインタが示す前記仮想空間内の位置に対して前記所定のアクションを行う、請求項10から17のいずれかに記載のゲームシステム。
【請求項19】
第1の操作装置と、第2の操作装置とをさらに備え、
前記第1モードにおいて、前記第1のプレイヤに割り当てられた操作入力は、前記第1の操作装置および前記第2の操作装置への操作入力であり、
前記第2モードにおいて、前記第1のプレイヤに割り当てられた操作入力は、前記第1の操作装置への操作入力であり、前記第2のプレイヤに割り当てられた操作入力は、前記第2の操作装置への操作入力である、請求項10から18のいずれかに記載のゲームシステム。
【請求項20】
第1の操作装置と、第2の操作装置とをさらに備え、
前記第1モードにおいて、前記第1のプレイヤに割り当てられた操作入力は、前記第1の操作装置への操作入力であり、
前記第2モードにおいて、前記第1のプレイヤに割り当てられた操作入力は、前記第1の操作装置への操作入力であり、前記第2のプレイヤに割り当てられた操作入力は、前記第2の操作装置への操作入力である、請求項10から18のいずれかに記載のゲームシステム。
【請求項21】
プレイヤ毎に割り当てられた操作入力に基づいて情報処理を行う少なくとも1つのプロセッサを備える情報処理装置であって、
前記プロセッサは、
第1のプレイヤに割り当てられた操作入力に基づいてゲームをプレイさせる第1モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクトを仮想空間内で制御すると共に、ゲーム画面に表示されるポインタを制御し、
前記仮想空間内において、第2のキャラクタオブジェクトを前記仮想空間内の状況に応じて自動で制御すると共に、当該第2のキャラクタオブジェクト
を前記ポインタが示す前記仮想空間内の位置
へ移動させて前記第2のキャラクタオブジェクトに前記位置に対して所定のアクションを行わせ、
又は、前記第2のキャラクタオブジェクトを前記位置へ移動させずに前記第2のキャラクタオブジェクトに前記位置に対して前記所定のアクションを行わせ、
前記第1のプレイヤに割り当てられた操作入力と第2のプレイヤに割り当てられた操作入力とに基づいて前記ゲームをプレイさせる第2モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第1のキャラクタオブジェクトを制御し、
前記第2のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第2のキャラクタオブジェクトを制御する、情報処理装置。
【請求項22】
少なくとも1つのプロセッサを備える情報処理システムにおいて行われる情報処理方法であって、前記プロセッサに、
第1のプレイヤに割り当てられた操作入力に基づいてゲームをプレイさせる第1モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクトを仮想空間内で制御させると共に、ゲーム画面に表示されるポインタを制御させ、
前記仮想空間内において、第2のキャラクタオブジェクトを前記仮想空間内の状況に応じて自動で制御させると共に、当該第2のキャラクタオブジェクト
を前記ポインタが示す前記仮想空間内の位置
へ移動させて前記第2のキャラクタオブジェクトに前記位置に対して所定のアクションを行わせ、
又は、前記第2のキャラクタオブジェクトを前記位置へ移動させずに前記第2のキャラクタオブジェクトに前記位置に対して前記所定のアクションを行わせ、
前記第1のプレイヤに割り当てられた操作入力と第2のプレイヤに割り当てられた操作入力とに基づいて前記ゲームをプレイさせる第2モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第1のキャラクタオブジェクトを制御させ、
前記第2のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第2のキャラクタオブジェクトを制御させる、情報処理方法。
【請求項23】
プレイヤ毎に割り当てられた操作入力に基づいて情報処理を行う情報処理装置で実行されるゲームプログラムであって、前記情報処理装置のコンピュータに、
第1のプレイヤに割り当てられた操作入力に基づいてゲームをプレイさせる第1モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクトを仮想空間内で制御させると共に、ゲーム画面に表示されるポインタを制御させ、
前記仮想空間内において、第2のキャラクタオブジェクトを前記仮想空間内の状況に応じて自動で制御させると共に、当該第2のキャラクタオブジェクトに前記ポインタが示す前記仮想空間内の位置に対して所定のアクションを行わせ、
前記第1のプレイヤに割り当てられた操作入力と第2のプレイヤに割り当てられた操作入力とに基づいて前記ゲームをプレイさせる第2モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第1のキャラクタオブジェクトを制御させ、
前記第2のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第2のキャラクタオブジェクトを制御させ
、
前記第1のプレイヤに割り当てられた操作入力には、慣性センサからの出力に応じた慣性データが少なくとも含まれ、
前記第1モードにおいて、前記慣性データに基づいて前記ポインタの位置が制御される、ゲームプログラム。
【請求項24】
プレイヤ毎に割り当てられた操作入力に基づいて情報処理を行う少なくとも1つのプロセッサを備えるゲームシステムであって、
前記プロセッサは、
第1のプレイヤに割り当てられた操作入力に基づいてゲームをプレイさせる第1モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクトを仮想空間内で制御すると共に、ゲーム画面に表示されるポインタを制御し、
前記仮想空間内において、第2のキャラクタオブジェクトを前記仮想空間内の状況に応じて自動で制御すると共に、当該第2のキャラクタオブジェクトに前記ポインタが示す前記仮想空間内の位置に対して所定のアクションを行わせ、
前記第1のプレイヤに割り当てられた操作入力と第2のプレイヤに割り当てられた操作入力とに基づいて前記ゲームをプレイさせる第2モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第1のキャラクタオブジェクトを制御し、
前記第2のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第2のキャラクタオブジェクトを制御
し、
前記第1のプレイヤに割り当てられた操作入力には、慣性センサからの出力に応じた慣性データが少なくとも含まれ、
前記第1モードにおいて、前記慣性データに基づいて前記ポインタの位置が制御される、ゲームシステム。
【請求項25】
プレイヤ毎に割り当てられた操作入力に基づいて情報処理を行う少なくとも1つのプロセッサを備える情報処理装置であって、
前記プロセッサは、
第1のプレイヤに割り当てられた操作入力に基づいてゲームをプレイさせる第1モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクトを仮想空間内で制御すると共に、ゲーム画面に表示されるポインタを制御し、
前記仮想空間内において、第2のキャラクタオブジェクトを前記仮想空間内の状況に応じて自動で制御すると共に、当該第2のキャラクタオブジェクトに前記ポインタが示す前記仮想空間内の位置に対して所定のアクションを行わせ、
前記第1のプレイヤに割り当てられた操作入力と第2のプレイヤに割り当てられた操作入力とに基づいて前記ゲームをプレイさせる第2モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第1のキャラクタオブジェクトを制御し、
前記第2のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第2のキャラクタオブジェクトを制御
し、
前記第1のプレイヤに割り当てられた操作入力には、慣性センサからの出力に応じた慣性データが少なくとも含まれ、
前記第1モードにおいて、前記慣性データに基づいて前記ポインタの位置が制御される、情報処理装置。
【請求項26】
少なくとも1つのプロセッサを備える情報処理システムにおいて行われる情報処理方法であって、前記プロセッサに、
第1のプレイヤに割り当てられた操作入力に基づいてゲームをプレイさせる第1モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクトを仮想空間内で制御させると共に、ゲーム画面に表示されるポインタを制御させ、
前記仮想空間内において、第2のキャラクタオブジェクトを前記仮想空間内の状況に応じて自動で制御させると共に、当該第2のキャラクタオブジェクトに前記ポインタが示す前記仮想空間内の位置に対して所定のアクションを行わせ、
前記第1のプレイヤに割り当てられた操作入力と第2のプレイヤに割り当てられた操作入力とに基づいて前記ゲームをプレイさせる第2モードにおいて、
前記第1のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第1のキャラクタオブジェクトを制御させ、
前記第2のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第2のキャラクタオブジェクトを制御させ
、
前記第1のプレイヤに割り当てられた操作入力には、慣性センサからの出力に応じた慣性データが少なくとも含まれ、
前記第1モードにおいて、前記慣性データに基づいて前記ポインタの位置が制御される、情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のキャラクタを用いてゲームを行うことが可能なゲームプログラム、ゲームシステム、情報処理装置、および情報処理方法に関する。
【背景技術】
【0002】
従来、複数のプレイヤの各々が仮想空間内の自らの複数のキャラクタを操作するゲームが存在していた(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記ゲームは、それぞれのプレイヤが別々のキャラクタを操作するものであり、一人又は複数のプレイヤで複数のキャラクタを制御する方法には改善の余地があった。
【0005】
それ故、本発明の目的は、複数のキャラクタを一人でも複数のプレイヤでも制御することができる新規な手法を提供することである。
【課題を解決するための手段】
【0006】
上記の課題を解決すべく、本発明は、以下の構成を採用した。
【0007】
本発明は、プレイヤ毎に割り当てられた操作入力に基づいて情報処理を行う少なくとも1つのプロセッサを備えるゲームシステムである。前記プロセッサは、第1のプレイヤに割り当てられた操作入力に基づいてゲームをプレイさせる第1モードにおいて、前記第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクトを仮想空間内で制御すると共に、ゲーム画面に表示されるポインタを制御し、前記仮想空間内において、第2のキャラクタオブジェクトを前記仮想空間内の状況に応じて自動で制御すると共に、当該第2のキャラクタオブジェクトに前記ポインタが示す前記仮想空間内の位置に対して所定のアクションを行わせる。また、前記プロセッサは、前記第1のプレイヤに割り当てられた操作入力と第2のプレイヤに割り当てられた操作入力とに基づいて前記ゲームをプレイさせる第2モードにおいて、前記第1のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第1のキャラクタオブジェクトを制御し、前記第2のプレイヤに割り当てられた操作入力に基づいて、前記仮想空間内において、前記第2のキャラクタオブジェクトを制御する。
【0008】
上記構成によれば、第1モードにおいては、第1のプレイヤが第1のキャラクタオブジェクトを制御するとともに、ポインタを制御することができる。第1モードでは、第2のキャラクタオブジェクトは自動で制御され、ポインタによって示される仮想空間内の位置に対して所定のアクションを行う。このため、第1モードにおいて、第1のプレイヤは、第1のキャラクタオブジェクトを制御するとともに、第2のキャラクタオブジェクトに所望の位置に対して所定のアクションを行わせることができる。また、第2モードでは、第1のプレイヤは第1のキャラクタオブジェクトを制御し、第2のプレイヤは第2のキャラクタオブジェクトを制御することができる。これにより、複数のキャラクタオブジェクトを、一人プレイモードでも複数人プレイモードでも操作することができ、新規なゲームを提供することができる。
【0009】
また、前記第1のプレイヤに割り当てられた操作入力には、慣性センサからの出力に応じた慣性データが少なくとも含まれてもよい。前記第1モードにおいて、前記慣性データに基づいて前記ポインタの位置が制御されてもよい。
【0010】
上記構成によれば、慣性センサからの慣性データに基づいてポインタの位置を制御することができる。これにより、第1のプレイヤは、例えば、慣性センサを備える操作装置の姿勢を変化させることでポインタの位置を制御することができる。
【0011】
また、前記第1のプレイヤに割り当てられた操作入力には、タッチパネルに対する入力に応じたタッチデータが少なくとも含まれてもよい。前記第1モードにおいて、前記タッチデータに基づいて前記ポインタの位置が制御されてもよい。
【0012】
上記構成によれば、タッチパネルを用いてポインタの位置を制御することができる。
【0013】
また、前記第1のプレイヤに割り当てられた操作入力には第1の方向入力が少なくとも含まれ、前記第2のプレイヤに割り当てられた操作入力には第2の方向入力が少なくとも含まれてもよい。前記第1モードにおいて、前記第1のキャラクタオブジェクトは前記第1の方向入力に基づいて移動制御されてもよい。前記第2モードにおいて、前記第1のキャラクタオブジェクトは前記第1の方向入力に基づいて移動制御され、前記第2のキャラクタオブジェクトは前記第2の方向入力に基づいて移動制御されてもよい。
【0014】
上記構成によれば、第1モードでは、第1の方向入力に基づいて第1のキャラクタオブジェクトを移動させることができる。第2モードでは、第1の方向入力に基づいて第1のキャラクタオブジェクトを移動させるとともに、第2の方向入力に基づいて第2のキャラクタオブジェクトを移動させることができる。第1のキャラクタオブジェクトの移動については、第1モードでも第2モードでも第1の方向入力に基づいて制御されるため、第1のプレイヤにとって分かりやすい操作とすることができる。
【0015】
また、前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記ポインタが示す前記仮想空間内の位置にオブジェクトが存在する場合、当該オブジェクトに対して前記所定のアクションを行ってもよい。
【0016】
上記構成によれば、仮想空間内に存在するオブジェクトに対して、第2のキャラクタオブジェクトに所定のアクションを行わせることができる。
【0017】
また、前記第2のキャラクタオブジェクトは、前記オブジェクトの種類に応じて異なるアクションを行ってもよい。
【0018】
上記構成によれば、仮想空間内に配置されたオブジェクトの種類に応じて、異なるアクションを第2のキャラクタオブジェクトに行わせることができる。
【0019】
また、前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記所定のアクションとして、前記ポインタが示す前記仮想空間内の位置に移動してもよい。
【0020】
上記構成によれば、第2のキャラクタオブジェクトを第1のプレイヤの所望の位置に移動させることができる。
【0021】
また、前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記第1のプレイヤに割り当てられた操作入力に含まれる指示に応じて、前記所定のアクションを行ってもよい。
【0022】
上記構成によれば、第1のプレイヤの所望のタイミングで第2のキャラクタオブジェクトに所定のアクションを行わせることができる。
【0023】
また、前記第1モードにおいて、前記第2のキャラクタオブジェクトは、前記第1のキャラクタオブジェクトの位置に応じて前記仮想空間の所定範囲を自動で移動し、前記第1のプレイヤに割り当てられた操作入力に含まれる指示に応じて、前記ポインタが示す前記仮想空間内の位置に対して前記所定のアクションを行ってもよい。
【0024】
上記構成によれば、例えば、第1のキャラクタオブジェクトの位置を含む所定範囲内で第2のキャラクタオブジェクトを自動で移動させつつ、所定のアクションを行わせることができる。これにより、第1のプレイヤは、例えば、自動で制御される第2のキャラクタオブジェクトの移動範囲をある程度制限しつつ、所望のタイミングで第2のキャラクタオブジェクトに所定のアクションを行わせることができる。
【0025】
上記ゲームシステムは、第1の操作装置と、第2の操作装置とをさらに備えてもよい。前記第1モードにおいて、前記第1のプレイヤに割り当てられた操作入力は、前記第1の操作装置および前記第2の操作装置への操作入力であってもよい。前記第2モードにおいて、前記第1のプレイヤに割り当てられた操作入力は、前記第1の操作装置への操作入力であり、前記第2のプレイヤに割り当てられた操作入力は、前記第2の操作装置への操作入力であってもよい。
【0026】
上記構成によれば、第1のプレイヤは、第1モードにおいて第1の操作装置および第2の操作装置を用いてゲームを行うことができる。第2モードに切り替えられた場合は、第1のプレイヤは、2つの操作装置のうちの第2の操作装置を第2のプレイヤに分け与え、第2の操作装置を用いて第2のプレイヤに第2のキャラクタオブジェクトを制御させることができる。
【0027】
上記ゲームシステムは、第1の操作装置と、第2の操作装置とをさらに備えてもよい。前記第1モードにおいて、前記第1のプレイヤに割り当てられた操作入力は、前記第1の操作装置への操作入力であってもよい。前記第2モードにおいて、前記第1のプレイヤに割り当てられた操作入力は、前記第1の操作装置への操作入力であり、前記第2のプレイヤに割り当てられた操作入力は、前記第2の操作装置への操作入力であってもよい。
【0028】
上記構成によれば、第1のプレイヤは、第1モードにおいて第1の操作装置を用いて第1のキャラクタオブジェクトを操作し、第2モードにおいても、同じ第1の操作装置を用いて同じ第1のキャラクタオブジェクトを操作することができる。また、第2モードにおいては、別の第2の操作装置を用いて第2のプレイヤに第2のキャラクタオブジェクトを制御させることができる。
【0029】
また、他の発明は、上記処理を実行する情報処理装置であってもよいし、情報処理装置のプロセッサに上記処理を行わせるゲームプログラムであってもよいし、情報処理システムにおいて行われる情報処理方法であってもよい。
【発明の効果】
【0030】
本発明によれば、複数のキャラクタオブジェクトを、一人プレイモードでも複数人プレイモードでも操作することができる。
【図面の簡単な説明】
【0031】
【
図1】本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図
【
図2】本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図
【
図6】本体装置2の内部構成の一例を示すブロック図
【
図7】本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図
【
図8】第1のプレイヤが第1モードでゲームを行っているときのゲーム画面の一例を示す図
【
図9】
図8に示すゲーム画面において、ポインタオブジェクト73及び第1のキャラクタオブジェクト71が移動する様子を示す図
【
図10】
図9の状態からポインタオブジェクト73及び第1のキャラクタオブジェクト71が移動した後のゲーム画面の一例を示す図
【
図11】第2のキャラクタオブジェクト72が、ポインタオブジェクト73によって示される仮想空間内の位置に移動した後のゲーム画面の一例を示す図
【
図12】第2のキャラクタオブジェクト72が、ポインタオブジェクト73によって示される仮想空間内の位置に対して所定のアクションを行う様子の一例を示す図
【
図13】仮想空間内に配置されたアイテムオブジェクト78の近傍にポインタオブジェクト73が位置している様子を示す図
【
図14】第2のキャラクタオブジェクト72が、第1のプレイヤの指示に応じてアイテムオブジェクト78を取得する様子を示す図
【
図15】タッチパネル13に対するタッチ操作が行われる直前のゲーム画面の一例を示す図
【
図16】タッチパネル13に対するタッチ操作が行われた直後のゲーム画面の一例を示す図
【
図17】
図8に示す状態で第1モードから第2モードに切り替えられた後のゲーム画面の一例を示す図
【
図18】本体装置2のメモリに記憶されるデータの一例を示す図
【
図19】本体装置2のプロセッサ81において行われるゲーム処理の一例を示すフローチャート
【
図20】ステップS103の第1モードのゲーム処理の一例を示すフローチャート
【
図21】ステップS108の第2モードのゲーム処理の一例を示すフローチャート
【発明を実施するための形態】
【0032】
(システム構成)
以下、本実施形態の一例に係るゲームシステムについて説明する。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる(
図2参照)。
【0033】
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。
図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
【0034】
図2は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。
図1および
図2に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
【0035】
図3は、本体装置2の一例を示す六面図である。
図3に示すように、本体装置2は、略板状のハウジング11を備える。
【0036】
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
【0037】
図3に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
【0038】
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
【0039】
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、
図6に示すスピーカ88)を備えている。
図3に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカ88の出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
【0040】
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。
【0041】
図3に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。
【0042】
本体装置2は、下側端子27を備える。下側端子27は、本体装置2がクレードルと通信を行うための端子である。上記一体型装置または本体装置2単体をクレードルに載置した場合、ゲームシステム1は、本体装置2が生成して出力する画像を据置型モニタに表示することができる。
【0043】
図4は、左コントローラ3の一例を示す六面図である。
図4に示すように、左コントローラ3は、ハウジング31を備える。本実施形態においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、
図1および
図4に示すy軸方向)に長い形状である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0044】
左コントローラ3は、アナログスティック32を備える。
図4に示すように、アナログスティック32は、ハウジング31の主面に設けられる。アナログスティック32は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック32を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。なお、左コントローラ3は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック32を押下する入力が可能である。
【0045】
左コントローラ3は、各種操作ボタンを備える。左コントローラ3は、ハウジング31の主面上に4つの操作ボタン33~36(具体的には、右方向ボタン33、下方向ボタン34、上方向ボタン35、および左方向ボタン36)を備える。さらに、左コントローラ3は、録画ボタン37および-(マイナス)ボタン47を備える。左コントローラ3は、ハウジング31の側面の左上に第1Lボタン38およびZLボタン39を備える。また、左コントローラ3は、ハウジング31の側面の、本体装置2に装着される際に装着される側の面に第2Lボタン43および第2Rボタン44を備える。これらの操作ボタンは、本体装置2で実行される各種プログラム(例えば、OSプログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
【0046】
また、左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。
【0047】
図5は、右コントローラ4の一例を示す六面図である。
図5に示すように、右コントローラ4は、ハウジング51を備える。本実施形態においては、ハウジング51は、縦長の形状、すなわち、上下方向に長い形状である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0048】
右コントローラ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の側面の右上に第1Rボタン60およびZRボタン61を備える。また、右コントローラ4は、左コントローラ3と同様、第2Lボタン65および第2Rボタン66を備える。
【0049】
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
【0050】
図6は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、
図3に示す構成の他、
図6に示す各構成要素81~91、97、および98を備える。これらの構成要素81~91、97、および98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
【0051】
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
【0052】
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【0053】
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
【0054】
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
【0055】
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。
【0056】
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
【0057】
プロセッサ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は、クレードルを介してデータ(例えば、画像データや音声データ)を据置型モニタ等に出力することができる。
【0058】
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、複数のユーザは、左コントローラ3および右コントローラ4のセットをそれぞれ用いて、本体装置2に対する入力を同時に行うことができる。一例として、第1ユーザが左コントローラ3および右コントローラ4の第1セットを用いて本体装置2に対して入力を行うと同時に、第2ユーザが左コントローラ3および右コントローラ4の第2セットを用いて本体装置2に対して入力を行うことが可能となる。
【0059】
本体装置2は、タッチパネル13の制御を行う回路であるタッチパネルコントローラ86を備える。タッチパネルコントローラ86は、タッチパネル13とプロセッサ81との間に接続される。タッチパネルコントローラ86は、タッチパネル13からの信号に基づいて、例えばタッチ入力が行われた位置を示すデータを生成して、プロセッサ81へ出力する。
【0060】
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
【0061】
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、プロセッサ81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。
【0062】
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
【0063】
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
【0064】
図7は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、
図6で示しているため
図7では省略している。
【0065】
左コントローラ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(登録商標)の規格に従って行われる。
【0066】
また、左コントローラ3は、例えばフラッシュメモリ等のメモリ102を備える。通信制御部101は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ102に記憶されるファームウェアを実行することによって各種の処理を実行する。
【0067】
左コントローラ3は、各ボタン103(具体的には、ボタン33~39、43、44、および47)を備える。また、左コントローラ3は、アナログスティック(
図7では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
【0068】
左コントローラ3は、慣性センサを備える。具体的には、左コントローラ3は、加速度センサ104を備える。また、左コントローラ3は、角速度センサ105を備える。本実施形態においては、加速度センサ104は、所定の3軸(例えば、
図4に示すxyz軸)方向に沿った加速度の大きさを検出する。なお、加速度センサ104は、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。本実施形態においては、角速度センサ105は、所定の3軸(例えば、
図4に示すxyz軸)回りの角速度を検出する。なお、角速度センサ105は、1軸回りあるいは2軸回りの角速度を検出するものであってもよい。加速度センサ104および角速度センサ105は、それぞれ通信制御部101に接続される。そして、加速度センサ104および角速度センサ105の検出結果は、適宜のタイミングで繰り返し通信制御部101へ出力される。
【0069】
通信制御部101は、各入力部(具体的には、各ボタン103、アナログスティック32、各センサ104および105)から、入力に関する情報(具体的には、操作に関する情報、またはセンサによる検出結果)を取得する。通信制御部101は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
【0070】
上記操作データが本体装置2へ送信されることによって、本体装置2は、左コントローラ3に対して行われた入力を得ることができる。すなわち、本体装置2は、各ボタン103およびアナログスティック32に対する操作を、操作データに基づいて判別することができる。また、本体装置2は、左コントローラ3の動きおよび/または姿勢に関する情報を、操作データ(具体的には、加速度センサ104および角速度センサ105の検出結果)に基づいて算出することができる。
【0071】
左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
【0072】
図7に示すように、右コントローラ4は、本体装置2との間で通信を行う通信制御部111を備える。また、右コントローラ4は、通信制御部111に接続されるメモリ112を備える。通信制御部111は、端子64を含む各構成要素に接続される。通信制御部111およびメモリ112は、左コントローラ3の通信制御部101およびメモリ102と同様の機能を有する。したがって、通信制御部111は、端子64を介した有線通信と、端子64を介さない無線通信(具体的には、Bluetooth(登録商標)の規格に従った通信)との両方で本体装置2と通信を行うことが可能であり、右コントローラ4が本体装置2に対して行う通信方法を制御する。
【0073】
右コントローラ4は、左コントローラ3の各入力部と同様の各入力部を備える。具体的には、各ボタン113、アナログスティック52、慣性センサ(加速度センサ114および角速度センサ115)を備える。これらの各入力部については、左コントローラ3の各入力部と同様の機能を有し、同様に動作する。
【0074】
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
【0075】
(本実施形態のゲームの概要)
次に、ゲームシステム1において行われるゲームの概要について説明する。本実施形態のゲームでは、一人のプレイヤがコントローラを用いてゲームをプレイする一人プレイモード(第1モード)と、複数のプレイヤがそれぞれのコントローラを用いてゲームをプレイする複数人プレイモード(第2モード)とがある。まず、第1モードについて説明した後、第2モードについて説明する。
【0076】
(第1モード)
図8は、第1のプレイヤが第1モードでゲームを行っているときのゲーム画面の一例を示す図である。
図8に示されるように、第1モードにおいて、第1のプレイヤは、例えば左コントローラ3及び右コントローラ4を用いてゲームを行う。例えば、第1のプレイヤは、本体装置2から左コントローラ3及び右コントローラ4を取り外して、取り外した左コントローラ3を左手で把持し、取り外した右コントローラ4を右手で把持して、ゲーム操作を行う。この場合、各コントローラ3、4と本体装置2とは無線により接続され、各コントローラ3,4からの操作データは無線で本体装置2に送信される。また、第1のプレイヤは、本体装置2から左コントローラ3及び右コントローラ4を取り外し、取り外した左コントローラ3を固定装置(図示せず)の左側面に装着し、取り外した右コントローラ4を当該固定装置の右側面に装着し、当該固定装置によって一体化された左右のコントローラを用いて、ゲーム操作を行ってもよい。あるいは、第1のプレイヤは、左コントローラ3及び右コントローラ4を本体装置2に装着したまま、左手で左コントローラ3を操作し、右手で右コントローラ4を操作して、ゲームを行ってもよい。
【0077】
図8に示されるように、本実施形態のゲームでは、仮想空間に第1のキャラクタオブジェクト71と、第2のキャラクタオブジェクト72とが配置される。また、仮想空間には、敵キャラクタ76と、地面に固定された木オブジェクト77とが配置される。また、
図8に示されるように、ゲーム画面には、ポインタオブジェクト73が表示される場合がある。ポインタオブジェクト73の詳細については後述する。その他にも、仮想空間には、様々な仮想オブジェクトが配置される。仮想空間には、仮想カメラが配置されており、当該仮想カメラに基づいてゲーム画像が生成され、生成されたゲーム画像がディスプレイ12(又は据置型モニタ)の画面に表示される。
【0078】
第1のキャラクタオブジェクト71は、第1モードにおいて、第1のプレイヤによって操作されるキャラクタオブジェクトであり、左コントローラ3及び右コントローラ4に対する入力に基づいて制御される。具体的には、第1モードにおいて、第1のキャラクタオブジェクト71は、例えば、左コントローラ3のアナログスティック32に対する方向入力に応じて、仮想空間内を移動する。例えば、アナログスティック32の右方向が入力された場合、第1のキャラクタオブジェクト71は、仮想空間内を右方向に移動する。仮想カメラは、その撮像範囲に第1のキャラクタオブジェクト71を含むように制御される。なお、第1モードにおいて、例えば右コントローラ4のアナログスティック52に対する方向入力に基づいて、仮想カメラの向きが制御される。この場合でも、仮想カメラの撮像範囲に第1のキャラクタオブジェクト71が含まれるように、仮想カメラの向き及び位置が制御される。
【0079】
また、第1のキャラクタオブジェクト71は、例えば、右コントローラ4のボタン53~56に対する入力に応じて、アクションを行う。例えば、第1のキャラクタオブジェクト71は、ジャンプしたり、仮想空間に落ちているオブジェクトを取得したり、敵キャラクタ76に対する攻撃を行ったりする。これらのアクションの他にも、第1のキャラクタオブジェクト71は、第1のプレイヤの操作入力に基づいて様々なアクションを行ってもよい。
【0080】
第1のキャラクタオブジェクト71は、仮想空間内の敵キャラクタ76を倒したり、仮想空間内に配置されたアイテムオブジェクト78(
図13参照)を取得したりする。アイテムオブジェクト78は、例えば、ゲームで利用可能な武器や防具等のアイテムであってもよいし、第1のキャラクタオブジェクト71の体力(ライフ)値をアップさせるアイテムであってもよいし、第1のキャラクタオブジェクト71を特定の状態(例えば、敵キャラクタ76から攻撃を加えられても体力値が減らない状態)にさせるアイテムであってもよいし、ゲーム内で使用可能な通貨であってもよいし、ゲームのスコアに関連するオブジェクトであってもよいし、ゲームのクリアに必要なアイテムであってもよい。第1のプレイヤは、第1のキャラクタオブジェクト71に様々なアクションを行わせながら第1のキャラクタオブジェクト71を仮想空間内で移動させることによりゲームを行う。
【0081】
第2のキャラクタオブジェクト72は、第1モードにおいて、第1のキャラクタオブジェクト71(第1のプレイヤ)をサポートするキャラクタオブジェクトであり、本体装置2のプロセッサ81によって自動的に制御される。第1モードにおける第2のキャラクタオブジェクト72の制御は、第1モードA、第1モードB、及び、第1モードCの何れかによって異なる。
【0082】
第1モードAは、第1のキャラクタオブジェクト71に対するサポート度合いが最も高いモードである。第1モードAでは、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71の位置を含む所定範囲内を自動で移動する。第1モードAでは、第2のキャラクタオブジェクト72の移動範囲は、3つの第1モードの中で最も広い。第1モードAでは、第2のキャラクタオブジェクト72は、第1のプレイヤの指示無しに、仮想空間内の敵キャラクタ76を倒したり、仮想空間内に落ちているアイテムオブジェクト78を取得したりする。第2のキャラクタオブジェクト72がアイテムオブジェクト78を取得した場合は、第1のキャラクタオブジェクト71が当該アイテムオブジェクト78を取得したのと同等の効果が生じる。例えば、第2のキャラクタオブジェクト72がアイテムオブジェクト78を取得した場合、当該アイテムオブジェクト78は、第1のキャラクタオブジェクト71の所有物となる。第2のキャラクタオブジェクト72が敵キャラクタ76を倒した場合も同様である。また、第1モードAでは、第1のキャラクタオブジェクト71がアクションを行った場合、第2のキャラクタオブジェクト72は、同様のアクションを自動で行う。例えば、第1のキャラクタオブジェクト71が攻撃動作(例えば、棒を振る動作)を行った場合、その攻撃動作と同時に、第2のキャラクタオブジェクト72も現在の位置で攻撃動作(例えば、同じ棒を振る動作、又は、異なる攻撃動作)を行う。
【0083】
第1モードBは、第1のキャラクタオブジェクト71に対するサポート度合いが中位のモードである。第1モードBでは、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71の位置を含む所定範囲内を自動で移動するが、第2のキャラクタオブジェクト72の移動範囲は、第1モードAよりは狭い。第1モードBでは、第2のキャラクタオブジェクト72は、第1のプレイヤの指示無しに、仮想空間内の敵キャラクタ76に攻撃を加えたり、仮想空間内に落ちているアイテムオブジェクト78を取得したりする。なお、第1モードBでは、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71が行ったアクションと同様のアクションを自動で行うことはない。
【0084】
第1モードCは、第1のキャラクタオブジェクト71に対するサポート度合いが最も低いモードである。第1モードCでは、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71の位置を含む所定範囲内を自動で移動する。第1モードCでは、第2のキャラクタオブジェクト72の移動範囲は、3つの第1モードの中で最も狭い。第1モードCでは、第2のキャラクタオブジェクト72は、第1のプレイヤの指示無しに、仮想空間内の敵キャラクタ76に攻撃を加えたり、仮想空間内に落ちているアイテムオブジェクト78を取得したりすることはない。
【0085】
第1モードA~Cの何れで第2のキャラクタオブジェクト72を制御するかは、第1のプレイヤの指示に応じて定められる。
【0086】
なお、本実施形態のゲームでは、第1のキャラクタオブジェクト71をサポートする第2のキャラクタオブジェクト72が仮想空間に登場しないモード(第3モード)もあってもよい。このモードでは、第1のプレイヤは第1のキャラクタオブジェクト71のみを制御し、第1のキャラクタオブジェクト71を移動させてアイテムオブジェクト78を取得させたり、第1のキャラクタオブジェクト71に敵キャラクタ76を攻撃させたりする。
【0087】
敵キャラクタ76は、本体装置2のプロセッサ81によって自動的に制御される。敵キャラクタ76は、第2のキャラクタオブジェクト72とは異なり、第1のキャラクタオブジェクト71の敵となるキャラクタである。敵キャラクタ76は、仮想空間内を移動したり、第1のキャラクタオブジェクト71に対して攻撃を加えたりする。なお、敵キャラクタ76は、仮想空間内に複数存在してもよい。また、敵キャラクタ76は、複数種類存在してもよい。また、敵キャラクタ76として、ボスキャラクタと、手下キャラクタとが存在してもよい。
【0088】
第1モードA~Cの何れで第2のキャラクタオブジェクト72が自動で制御される場合でも、第2のキャラクタオブジェクト72は、第1のプレイヤの指示に応じて、ポインタオブジェクト73が示す仮想空間内の位置に対して所定のアクションを行う。以下、第2のキャラクタオブジェクト72による、ポインタオブジェクト73が示す仮想空間内の位置に対する所定のアクションについて説明する。
【0089】
図9は、
図8に示すゲーム画面において、ポインタオブジェクト73及び第1のキャラクタオブジェクト71が移動する様子を示す図である。
【0090】
図9に示されるように、ゲーム画面には、ポインタオブジェクト73が表示される。ポインタオブジェクト73は、第1モードにおいて通常は表示されないが、第1のプレイヤの指示(例えば、第1Rボタン60の押下)が行われた場合、ゲーム画面に表示される。ポインタオブジェクト73は、ゲーム画面における指示位置を表す。第1のプレイヤは、右コントローラ4を用いてポインタオブジェクト73を移動させる。具体的には、ポインタオブジェクト73は、右コントローラ4の慣性センサ(加速度センサ114および角速度センサ115)からの慣性データに基づいて、その位置が制御される。慣性データは、右コントローラ4から出力されるデータであり、慣性センサ(加速度センサ114および角速度センサ115)の出力に基づいて算出される右コントローラ4の姿勢を表すデータであってもよいし、慣性センサから出力される加速度値及び角速度値等を表すデータであってもよい。
【0091】
ポインタオブジェクト73は、右コントローラ4の姿勢の変化に応じてゲーム画面内を移動する。例えば、第1のプレイヤが右コントローラ4の上面(第1Rボタン60が設けられた面)をゲーム画面に向けているときに、当該上面が左上を向くように右コントローラ4の姿勢を変化させた場合、ポインタオブジェクト73は、
図9に示すようにゲーム画面上を左上方向に移動する。
【0092】
一方、第1のプレイヤが左コントローラ3のアナログスティック32を用いて右方向を入力した場合、
図9に示すように、第1のキャラクタオブジェクト71は、右方向に移動する。また、例えば、第1のプレイヤが右コントローラ4のボタン53を押した場合、第1のキャラクタオブジェクト71は、仮想空間内でジャンプする。
【0093】
図10は、
図9の状態からポインタオブジェクト73及び第1のキャラクタオブジェクト71が移動した後のゲーム画面の一例を示す図である。
図10に示されるように、ポインタオブジェクト73は、敵キャラクタ76の位置に存在する。また、第1のキャラクタオブジェクト71は、
図9のときよりも右側に移動している。また、第2のキャラクタオブジェクト72は、
図9のときよりもやや左側に位置している。このときの第2のキャラクタオブジェクト72の移動は、プロセッサ81によって自動的に行われる。なお、第2のキャラクタオブジェクト72の位置は、第1のキャラクタオブジェクト71の位置に依存する。すなわち、第2のキャラクタオブジェクト72の位置は、第1のキャラクタオブジェクト71と完全に独立して定められるわけではなく、第1のキャラクタオブジェクト71の位置を含む所定範囲に定められる。第2のキャラクタオブジェクト72は、当該所定範囲内を自動的に(第1のプレイヤの指示が無くても)移動する。
【0094】
図10に示される状態で第1のプレイヤによる所定の指示(例えば、第1Rボタン60の押下)が行われた場合、第2のキャラクタオブジェクト72は、ポインタオブジェクト73によって示される仮想空間内の位置に移動するとともに、当該位置に対して所定のアクションを行う。
【0095】
図11は、第2のキャラクタオブジェクト72が、ポインタオブジェクト73によって示される仮想空間内の位置に移動した後のゲーム画面の一例を示す図である。
図12は、第2のキャラクタオブジェクト72が、ポインタオブジェクト73によって示される仮想空間内の位置に対して所定のアクションを行う様子の一例を示す図である。
【0096】
図11に示されるように、第1のプレイヤによる所定の指示が行われた場合、第2のキャラクタオブジェクト72は、ポインタオブジェクト73によって示される仮想空間内の位置に移動する。そして、ポインタオブジェクト73によって示される仮想空間内の位置に敵キャラクタ76が存在する場合、
図12に示されるように、第2のキャラクタオブジェクト72は、当該敵キャラクタ76に対して攻撃を行う。敵キャラクタ76に対する攻撃が行われた場合、又は、当該攻撃によって敵キャラクタ76の体力値が0になった場合、敵キャラクタ76は倒れる。
【0097】
このように、第2のキャラクタオブジェクト72は、第1のプレイヤの所定の指示に応じて、ポインタオブジェクト73が示す位置に対して攻撃動作(所定のアクションの一例)を行う。これにより、第1のキャラクタオブジェクト71のサポートを行う。
【0098】
なお、
図11及び
図12に示す例では、第2のキャラクタオブジェクト72は、ポインタオブジェクト73によって示される仮想空間内の位置まで移動して、当該位置に対して攻撃動作を行った。第2のキャラクタオブジェクト72は、ポインタオブジェクト73によって示される仮想空間内の位置まで移動せずに、当該位置に対して攻撃動作を行ってもよい。例えば、第2のキャラクタオブジェクト72が
図10に示される位置にいるときに、第1のプレイヤによって所定の指示が行われた場合、第2のキャラクタオブジェクト72は、その位置でポインタオブジェクト73によって示される仮想空間内の位置に向けて矢オブジェクトを発射してもよい。発射された矢オブジェクトは、仮想空間内を移動し、ポインタオブジェクト73によって示される仮想空間内の位置まで到達する。そして、当該矢オブジェクトが敵キャラクタ76に当たることで、敵キャラクタ76に対する攻撃が行われる。
【0099】
次に、第2のキャラクタオブジェクト72が行う所定のアクションの別の例について説明する。
図13は、仮想空間内に配置されたアイテムオブジェクト78の近傍にポインタオブジェクト73が位置している様子を示す図である。
図14は、第2のキャラクタオブジェクト72が、第1のプレイヤの指示に応じてアイテムオブジェクト78を取得する様子を示す図である。
【0100】
図13に示されるように、仮想空間内にはアイテムオブジェクト78が配置されている。アイテムオブジェクト78は、仮想空間内の地面上に配置されてもよいし、岩等の仮想空間内に配置された他のオブジェクトの内部に隠されてもよい。アイテムオブジェクト78は、第1のキャラクタオブジェクト71がその位置まで移動することによって取得可能なオブジェクトである。第1のキャラクタオブジェクト71がアイテムオブジェクト78を取得した場合、第1のキャラクタオブジェクト71は特定の状態になり、ゲームを有利に進めることができてもよい。また、第1のキャラクタオブジェクト71がアイテムオブジェクト78を取得した場合、ゲームのスコアが加算されてもよい。
【0101】
第1のプレイヤは、右コントローラ4の姿勢を変化させて、アイテムオブジェクト78の近傍(アイテムオブジェクト78の位置から所定範囲内)にポインタオブジェクト73を移動させる。そして、
図13に示される状態で第1のプレイヤが所定の指示(例えば、第1Rボタン60の押下)を行った場合、
図14に示されるように、第2のキャラクタオブジェクト72は、ポインタオブジェクト73によって示される仮想空間内の位置に移動するとともに、アイテムオブジェクト78を取得する。第2のキャラクタオブジェクト72によって取得されたアイテムオブジェクト78は、第1のキャラクタオブジェクト71が取得したものと見なされる。アイテムオブジェクト78が取得された場合、アイテムオブジェクト78は、ゲーム画面から消去される。
【0102】
上述したように、第1モードでは、第1のプレイヤに割り当てられた操作入力(左コントローラ3のアナログスティック32に対する方向入力、右コントローラ4のボタン53~56に対する入力、右コントローラ4の姿勢を変化させる入力)に基づいて、第1のキャラクタオブジェクト71が仮想空間内で制御(移動、ジャンプ、攻撃、アイテム取得等)されるとともに、ポインタオブジェクト73がゲーム画面上で制御される。また、第1モードでは、第2のキャラクタオブジェクト72は、仮想空間内において自動で制御されるとともに、ポインタオブジェクト73によって示される仮想空間の位置に対して、所定のアクションを行う。
【0103】
このように、第1のプレイヤは、第1のキャラクタオブジェクト71を操作するだけでなく、基本的に自動で動作する第2のキャラクタオブジェクト72に所定のアクションを行わせることができる。これにより、一人でも複数のキャラクタオブジェクトを容易に制御することができ、ゲームを有利に進めることができる。
【0104】
上述した敵キャラクタ76に対する攻撃やアイテムオブジェクト78の取得以外にも、第2のキャラクタオブジェクト72に所定のアクションを行わせることができてもよい。例えば、ポインタオブジェクト73を用いて木オブジェクト77を指示しているときに、第1のプレイヤが所定の指示を行った場合、第2のキャラクタオブジェクト72は、木オブジェクト77の位置まで移動して、木オブジェクト77を揺らしてもよい。このように、ポインタオブジェクト73によって示される仮想空間内の位置にオブジェクトが存在する場合、第2のキャラクタオブジェクト72は、当該オブジェクトに対して、オブジェクトの種類に応じた様々なアクションを行う。
【0105】
一方、ポインタオブジェクト73によって示される仮想空間内の位置にオブジェクトが存在しない場合、第2のキャラクタオブジェクト72は、当該位置に移動する。これにより、第1のプレイヤは、第2のキャラクタオブジェクト72を所望の位置に移動させることができる。
【0106】
なお、本実施形態では、第1モードにおいて、タッチパネル13に対するタッチ操作によっても、ポインタオブジェクト73を用いた位置の指示及び所定のアクションの指示が行われる。
【0107】
図15は、タッチパネル13に対するタッチ操作が行われる直前のゲーム画面の一例を示す図である。
図16は、タッチパネル13に対するタッチ操作が行われた直後のゲーム画面の一例を示す図である。
【0108】
図15に示されるように、第1のプレイヤが左コントローラ3及び右コントローラ4を用いて第1のキャラクタオブジェクト71の制御を行っているときに、タッチペン又は指を用いて、敵キャラクタ76の位置(又はその近傍)がタッチされる。すると、
図16に示されるように、ポインタオブジェクト73はタッチ位置まで移動するとともに、第2のキャラクタオブジェクト72は、タッチ位置まで移動する。そして、第2のキャラクタオブジェクト72はタッチ位置に存在する敵キャラクタ76に対して攻撃動作を行う。
【0109】
すなわち、タッチパネル13に対するタッチ操作が行われた場合、上述した右コントローラ4の姿勢を変化させることによるポインタオブジェクト73を用いた位置の指示と、第2のキャラクタオブジェクト72に所定のアクションを行わせるための所定の指示(第1Rボタン60の押下)とが同時に行われたものとして処理される。
【0110】
なお、上述したのと同様に、タッチ位置に敵キャラクタ76が存在しない場合は、第2のキャラクタオブジェクト72は、異なるアクションを行う。例えば、タッチ位置にアイテムオブジェクト78が存在する場合、第2のキャラクタオブジェクト72は、タッチ位置まで移動するとともに、当該アイテムオブジェクト78を取得する。また、タッチ位置にオブジェクトが存在しない場合、第2のキャラクタオブジェクト72は、タッチ位置まで移動する。
【0111】
このように、タッチパネル13に対するタッチ操作によって、ポインタオブジェクト73を用いた位置の指示と、所定のアクションの指示とが行われる。すなわち、タッチパネル13に対するタッチ操作によって、ポインタオブジェクト73がタッチ位置まで移動するとともに、第2のキャラクタオブジェクト72がポインタオブジェクト73によって示される仮想空間内の位置に対して所定のアクションを行う。なお、タッチパネル13に対するタッチ操作によって、ポインタオブジェクト73を用いた位置の指示のみが行われてもよい。この場合、所定のアクションの指示は、別の操作(例えば、右コントローラ4のボタン操作、タッチパネル13に対する2回目のタッチ操作等)によって行われてもよい。
【0112】
(第2モード)
次に、第1のキャラクタオブジェクト71及び第2のキャラクタオブジェクト72をそれぞれ別のプレイヤが制御する第2モードについて説明する。例えば、第1のプレイヤが第1モードでゲームを行っているときに、第1のプレイヤによるモード切替のための指示が行われた場合、ゲームが中断されて、第2モードに切り替えられる。例えば、第1のプレイヤが第1モードでゲームを行っているときに、所定のボタンが押下された場合、ゲームが中断される。ゲームが中断されると、ゲーム内の時間の流れが一時停止し、第1のキャラクタオブジェクト71、第2のキャラクタオブジェクト72、及び、敵キャラクタ76等、仮想空間内を動くオブジェクトが一時停止する。そして、さらにモード切替のための指示がされた場合、第1モードから第2モードに切り替えられる。第1モードから第2モードに切り替えられた場合、第1モードのゲームが中断される直前の状態から、第2モードでゲームが再開される。
【0113】
図17は、
図8に示す状態で第1モードから第2モードに切り替えられた後のゲーム画面の一例を示す図である。
図17に示されるように、第2モードでは、例えば、第1のプレイヤは左コントローラ3を用い、第2のプレイヤは右コントローラ4を用いてゲームを行う。
【0114】
第2モードでは、第1のキャラクタオブジェクト71は、左コントローラ3に対する操作入力に基づいて制御される。具体的には、左コントローラ3のアナログスティック32に対する方向入力に基づいて、第1のキャラクタオブジェクト71は仮想空間内を移動する。また、例えば、左コントローラ3のボタン34に対する入力に基づいて、第1のキャラクタオブジェクト71は仮想空間内でジャンプする。
【0115】
また、第2モードでは、第2のキャラクタオブジェクト72は、右コントローラ4に対する操作入力に基づいて制御される。具体的には、右コントローラ4のアナログスティック52に対する方向入力に基づいて、第2のキャラクタオブジェクト72は仮想空間内を移動する。また、例えば、右コントローラ4のボタン54に対する入力に基づいて、第2のキャラクタオブジェクト72は仮想空間内で攻撃動作を行う。
【0116】
なお、第1のキャラクタオブジェクト71は、第1のプレイヤ(左コントローラ3)の操作に応じて、仮想空間内を移動可能であり、第1のキャラクタオブジェクト71の移動に応じて仮想カメラも仮想空間内を移動する。仮想カメラの撮像範囲に第1のキャラクタオブジェクト71が含まれるように、仮想カメラの位置及び姿勢が制御される。
【0117】
一方、第2のキャラクタオブジェクト72は、基本的には、第2のプレイヤ(右コントローラ4)の操作に応じて仮想空間内を移動可能であるが、仮想カメラの撮像範囲から出ないようにその移動が制限されてもよい。例えば、第2のキャラクタオブジェクト72がゲーム画面の右端に位置する場合において、第2のプレイヤが右方向を入力しても、第2のキャラクタオブジェクト72はそれ以上右方向に移動しないように制御されてもよい。すなわち、第2のキャラクタオブジェクト72は、基本的には、第2のプレイヤの操作に応じて仮想空間内を移動可能であるが、その移動範囲は第1のキャラクタオブジェクト71の位置に依存してもよい。
【0118】
なお、第2モードにおいて、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71の位置に依存せずに、完全に独立して移動制御されてもよい。
【0119】
また、
図17に示す例では、第1のキャラクタオブジェクト71は、左コントローラ3を用いて制御され、第2のキャラクタオブジェクト72は、右コントローラ4を用いて制御された。第1のキャラクタオブジェクト71及び第2のキャラクタオブジェクト72に対する制御はこれに限らず、第1のキャラクタオブジェクト71は、右コントローラ4を用いて制御され、第2のキャラクタオブジェクト72は、左コントローラ3を用いて制御されてもよい。
【0120】
また、左コントローラ3及び右コントローラ4の組が複数用意され、複数組のコントローラを用いて各キャラクタオブジェクトが制御されてもよい。例えば、第1のキャラクタオブジェクト71は、第1組の左コントローラ3及び右コントローラ4を用いて制御され、第2のキャラクタオブジェクト72は、第2組の左コントローラ3及び右コントローラ4を用いて制御されてもよい。
【0121】
また、上記左コントローラ3及び右コントローラ4とは異なるコントローラであって、これらと同等の機能を有するこれらを統合したコントローラ(以下、「統合コントローラ」という)が本体装置2に接続されてもよい。このような統合コントローラの左側部分には、左コントローラ3のアナログスティック32と同等の機能を有する左アナログスティックと複数のボタンとが設けられる。また、当該統合コントローラの右側部分には、右コントローラ4のアナログスティック52と同等の機能を有する右アナログスティックと複数のボタンとが設けられる。また、統合コントローラには、慣性センサ(加速度センサ及び角速度センサ)が設けられる。統合コントローラが本体装置2に接続される場合、当該統合コントローラを用いて第1のキャラクタオブジェクト71が制御されてもよい。この場合、別の統合コントローラ、左コントローラ3、又は、右コントローラ4も本体装置2に接続され、当該接続された別の統合コントローラ、左コントローラ3、又は、右コントローラ4を用いて、第2のキャラクタオブジェクト72が制御されてもよい。
【0122】
このように、第2モードでは、第1のプレイヤに割り当てられた操作入力(左コントローラ3に対する入力)に基づいて、第1のキャラクタオブジェクト71が仮想空間内で制御(移動、攻撃、アイテム取得等のアクション)される。また、第2のプレイヤに割り当てられた操作入力(右コントローラ4に対する入力)に基づいて、第2のキャラクタオブジェクト72が仮想空間内で制御(移動、攻撃、アイテム取得等のアクション)される。
【0123】
これにより、第1のプレイヤにより行われていたゲームに、第2のプレイヤを参加させることができ、第2のプレイヤに第1のプレイヤのサポートをさせることができる。
【0124】
(ゲーム処理の詳細)
次に、本体装置2において行われるゲーム処理の一例について具体的に説明する。まず、本体装置2に記憶されるデータについて説明する。
【0125】
図18は、本体装置2のメモリに記憶されるデータの一例を示す図である。
図18に示されるデータは、DRAM85、フラッシュメモリ84、及び外部記憶媒体の何れかに記憶される。なお、以下では、第1のプレイヤが第1モードでゲームを行う場合について説明する。
【0126】
図18に示すように、本体装置2のメモリには、ゲームプログラムと、モードデータと、左コントローラ操作データと、右コントローラ操作データと、本体操作データと、第1キャラクタデータと、第2キャラクタデータと、ポインタデータと、他オブジェクトデータとが記憶される。これらの他にも、ゲームに必要な様々なデータが記憶される。
【0127】
ゲームプログラムは、本実施形態のゲーム処理を実行するためのプログラムである。ゲームプログラムは、例えばスロット23に装着された外部記憶媒体に記憶されており、ゲームが開始されると、当該外部記憶媒体からDRAM85に読み込まれる。
【0128】
モードデータは、現在のモードが第1モードか第2モードかを示すデータである。本実施形態では、プレイヤの指示が無ければ第1モード及び第2モードのうち第1モードが設定され、プレイヤの指示があった場合に第1モードから第2モードに切り替えられる。
【0129】
左コントローラ操作データは、左コントローラ3から送信された操作データである。左コントローラ操作データは、左コントローラ3の各種ボタン(33~36、38、39、43、44等)の押下状態に関するボタンデータと、左コントローラ3のアナログスティック32に対する方向入力に応じたスティックデータとを含む。また、左コントローラ操作データは、慣性センサ(加速度センサ104及び角速度センサ105)からの出力に応じた慣性データを含む。慣性データは、加速度センサ104及び角速度センサ105が検出した加速度値及び角速度値に基づいて算出された左コントローラ3の姿勢を表すデータであってもよい。また、慣性データは、加速度センサ104及び角速度センサ105が検出した加速度値及び角速度値を表すデータであってもよい。
【0130】
右コントローラ操作データは、右コントローラ4から送信された操作データである。右コントローラ操作データは、右コントローラ4の各種ボタン(53~56、60、61、65、66等)の押下状態に関するボタンデータと、右コントローラ4のアナログスティック52に対する方向入力に応じたスティックデータとを含む。また、右コントローラ操作データは、慣性センサ(加速度センサ114及び角速度センサ115)からの出力に応じた慣性データを含む。慣性データは、加速度センサ114及び角速度センサ115が検出した加速度値及び角速度値に基づいて算出された右コントローラ4の姿勢を表すデータであってもよい。また、慣性データは、加速度センサ114及び角速度センサ115が検出した加速度値及び角速度値を表すデータであってもよい。
【0131】
本体操作データは、本体装置2に対する操作に応じたデータであり、タッチパネル13に対するタッチ操作に応じたタッチデータを含む。タッチデータは、タッチパネル13上のタッチ位置を示す座標データであり、画面の横方向の座標値と、縦方向の座標値とを含む。
【0132】
第1キャラクタデータは、第1のキャラクタオブジェクト71に関するデータである。第1キャラクタデータは、第1のキャラクタオブジェクト71の仮想空間における位置、姿勢等に関するデータを含む。また、第1キャラクタデータは、第1のキャラクタオブジェクト71の体力値に関するデータ、形状に関するデータ、第1のキャラクタオブジェクト71が取得したアイテムオブジェクト78に関するデータを含む。
【0133】
第2キャラクタデータは、第2のキャラクタオブジェクト72に関するデータである。第2キャラクタデータは、第2のキャラクタオブジェクト72の仮想空間における位置、姿勢等に関するデータを含む。また、第2キャラクタデータは、第2のキャラクタオブジェクト72の形状に関するデータを含む。
【0134】
ポインタデータは、ポインタオブジェクト73に関するデータである。ポインタデータは、ポインタオブジェクト73の位置情報を含む。ポインタオブジェクト73の位置情報は、ゲーム画面における位置を表す情報(画面上の2次元座標値)であってもよい。また、ポインタオブジェクト73の位置情報は、仮想空間内の位置を表す情報(仮想空間内の3次元座標値)であってもよい。また、ポインタデータは、ポインタオブジェクト73の画像データを含む。また、ポインタデータは、ポインタオブジェクト73をゲーム画面に表示するか否かを示すデータを含む。
【0135】
他オブジェクトデータは、敵キャラクタ76や木オブジェクト77等、仮想空間に配置される他の仮想オブジェクトに関するデータである。例えば、他オブジェクトデータは、敵キャラクタ76に関するデータとして、敵キャラクタ76の仮想空間における位置や姿勢、敵キャラクタ76の形状に関するデータ、敵キャラクタ76の体力値に関するデータ等を含む。
【0136】
(フローチャートの説明)
次に、本体装置2において行われるゲーム処理の詳細について説明する。
図19は、本体装置2のプロセッサ81において行われるゲーム処理の一例を示すフローチャートである。
図19では、本実施形態のゲームが第1モード又は第2モードで実行される例について説明する。
【0137】
図19に示されるように、ゲームの開始が指示されると、プロセッサ81は、まず初期処理を行う(ステップS100)。具体的には、プロセッサ81は、仮想空間に第1のキャラクタオブジェクト71及び第2のキャラクタオブジェクト72を配置するとともに、敵キャラクタ76や他の仮想オブジェクトを仮想空間に配置する。初期処理の後、プロセッサ81は、第1モードでゲームを開始する(ステップS101)。
【0138】
次に、プロセッサ81は、操作データを取得する(ステップS102)。左コントローラ3及び右コントローラ4から本体装置2に対して、所定の時間間隔(例えば、1/200秒間隔)で左コントローラ操作データ及び右コントローラ操作データが繰り返し送信される。本体装置2のメモリには、左コントローラ3及び右コントローラ4から受信した左コントローラ操作データ及び右コントローラ操作データが、一時的に記憶されている。プロセッサ81は、ステップS102において、メモリに記憶された左コントローラ操作データ及び右コントローラ操作データを取得する。また、プロセッサ81は、本体装置2のタッチパネル13からの出力に基づいて、タッチ位置を示すタッチデータを取得する。
【0139】
次に、プロセッサ81は、取得した操作データに基づいて、第1モードのゲーム処理を行う(ステップS103)。ここでは、プロセッサ81は、第1のプレイヤに割り当てられた操作入力(具体的には、左コントローラ3及び右コントローラ4の操作入力)に基づいて、第1のキャラクタオブジェクト71を制御するとともに、ポインタオブジェクト73を制御する。また、プロセッサ81は、第2のキャラクタオブジェクト72を自動で制御するとともに、第2のキャラクタオブジェクト72に、ポインタオブジェクト73によって示される仮想空間内の位置に対する所定のアクションを行わせる。ステップS103の処理の詳細については後述する。
【0140】
ステップS103に続いて、プロセッサ81は、第2モードへの切り替えを行うか否かを判定する(ステップS104)。具体的には、プロセッサ81は、ステップS102で取得した操作データに基づいて、第2モードへの切り替えのための指示が行われたか否かを判定する。ステップS104でYESと判定した場合、プロセッサ81は、次にステップS105の処理を行う。
【0141】
一方、ステップS104でNOと判定した場合、プロセッサ81は、ステップS102の処理を再び行う。ステップS102~ステップS104の処理が、所定のフレーム時間(例えば、1/60秒)間隔で繰り返し行われることにより、第1のプレイヤによる第1モードのゲームが行われる。
【0142】
次に、ステップS105において、プロセッサ81は、キャラクタオブジェクトに対して操作入力(コントローラ)の割り当てを行う。本実施形態では、先に所定のボタンに対する操作が行われたコントローラが第1のキャラクタオブジェクト71に割り当てられる。例えば、先に第1のプレイヤが左コントローラ3の所定の操作ボタンを押下し、後に第2のプレイヤが右コントローラ4の所定の操作ボタンを押下した場合、第1のプレイヤ(左コントローラ3)が第1のキャラクタオブジェクト71に割り当てられ、第2のプレイヤ(右コントローラ4)が第2のキャラクタオブジェクト72に割り当てられる。以下の説明では、ステップS105において、第1のプレイヤ(左コントローラ3)が第1のキャラクタオブジェクト71に割り当てられ、第2のプレイヤ(右コントローラ4)が第2のキャラクタオブジェクト72に割り当てられたものとする。
【0143】
ステップS105の処理を行った後、プロセッサ81は、第2モードでゲームを再開する(ステップS106)。ここでは、ステップS104で第2モードへの切り替えが行われる直前の状態からゲームが再開される。すなわち、ゲームのシーン、仮想空間の状態、第1のキャラクタオブジェクト71及び第2のキャラクタオブジェクト72の状態(仮想空間内での位置や体力値等)、敵キャラクタ76の状態、仮想空間内の他のオブジェクトの状態等は、第2モードへの切り替え前後で維持される。
【0144】
ステップS106に続いて、プロセッサ81は、操作データを取得する(ステップS107)。ステップS107の処理は、ステップS102と同様である。
【0145】
次に、プロセッサ81は、取得した操作データに基づいて、第2モードのゲーム処理を行う(ステップS108)。ここでは、プロセッサ81は、第1のプレイヤに割り当てられた操作入力(具体的には、左コントローラ3の操作入力)に基づいて、第1のキャラクタオブジェクト71を制御する。また、プロセッサ81は、第2のプレイヤに割り当てられた操作入力(具体的には、右コントローラ4の操作入力)に基づいて、第2のキャラクタオブジェクト72を制御する。ステップS108の処理の詳細については後述する。
【0146】
ステップS108に続いて、プロセッサ81は、第2モードを終了するか否かを判定する(ステップS109)。具体的には、プロセッサ81は、ステップS107で取得した操作データに基づいて、第2モードの終了のための指示が行われたか否かを判定する。ステップS109でYESと判定した場合、プロセッサ81は、次にステップS110の処理を行う。
【0147】
一方、ステップS109でNOと判定した場合、プロセッサ81は、ステップS107の処理を再び行う。ステップS107~ステップS109の処理が、所定のフレーム時間(例えば、1/60秒)間隔で繰り返し行われることにより、第1のプレイヤ及び第2のプレイヤによる第2モードのゲームが行われる。
【0148】
ステップS110において、プロセッサ81は、第1モードのゲームを再開し、処理をステップS102に戻す。ここでは、ステップS109で第2モードが終了される直前の状態からゲームが再開される。
【0149】
(第1モードのゲーム処理)
次に、ステップS103の第1モードのゲーム処理の詳細について説明する。
図20は、ステップS103の第1モードのゲーム処理の一例を示すフローチャートである。
【0150】
プロセッサ81は、左コントローラ3からの操作データに基づいて、第1のキャラクタオブジェクト71の移動処理を行う(ステップS120)。具体的には、プロセッサ81は、左コントローラ3のアナログスティック32に対する方向入力に基づいて、第1のキャラクタオブジェクト71を仮想空間内で移動させる。なお、第1のキャラクタオブジェクト71が移動した位置にアイテムオブジェクト78が存在する場合、プロセッサ81は、第1のキャラクタオブジェクト71に当該アイテムオブジェクト78を取得させる。また、第1のキャラクタオブジェクト71が移動した位置に敵キャラクタ76が存在する場合、プロセッサ81は、第1のキャラクタオブジェクト71の体力値を減少させる。また、プロセッサ81は、第1のキャラクタオブジェクト71の移動に伴い、仮想カメラも仮想空間内で移動させる。移動後の第1のキャラクタオブジェクト71の位置は、第1キャラクタデータとしてメモリに記憶される。
【0151】
次に、プロセッサ81は、右コントローラ4からの操作データに基づいて、第1のキャラクタオブジェクト71のアクション処理を行う(ステップS121)。具体的には、右コントローラ4のボタン53~56に対する押下が行われた場合、プロセッサ81は、当該ボタンの押下に応じたアクションを第1のキャラクタオブジェクト71に行わせる。例えば、右コントローラ4のボタン53が押下された場合、プロセッサ81は、第1のキャラクタオブジェクト71を仮想空間内でジャンプさせる。また、例えば、右コントローラ4のボタン56が押下された場合、プロセッサ81は、第1のキャラクタオブジェクト71に攻撃動作を行わせる。第1のキャラクタオブジェクト71の位置から所定範囲内に敵キャラクタ76が存在する場合、第1のキャラクタオブジェクト71の攻撃動作によって当該敵キャラクタ76に対して攻撃が加えられる。これにより、敵キャラクタ76の体力値が減少する。
【0152】
ステップS121に続いて、プロセッサ81は、第2のキャラクタオブジェクト72の自動制御処理を行う(ステップS122)。ここでは、第2のキャラクタオブジェクト72は、第1のプレイヤの指示無しにプロセッサ81によって自動的に制御される。第2のキャラクタオブジェクト72の自動制御は、第1モードA~第1モードCの何れが設定されているかによって異なる。例えば、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71の位置を含む所定範囲内で自動的に移動されるが、第2のキャラクタオブジェクト72の移動範囲は、第1モードA~第1モードCによって異なる。また、第1モードA~第1モードCの何れが設定されているかによって、第2のキャラクタオブジェクト72は、自動的に敵キャラクタ76を攻撃したり、アイテムオブジェクト78を取得したりする。例えば、第1モードA又は第1モードBが設定されている場合、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71の位置から所定範囲に存在する敵キャラクタ76に対して攻撃を加える。第2のキャラクタオブジェクト72は、第2のキャラクタオブジェクト72から近い敵キャラクタ76を優先的に攻撃してもよいし、第1のキャラクタオブジェクト71から近い敵キャラクタ76を優先的に攻撃してもよい。また、プロセッサ81は、第2のキャラクタオブジェクト72の攻撃動作として、複数の攻撃動作の中から何れかをランダムに選択してもよいし、敵キャラクタ76の種類に応じて複数の攻撃動作の中から何れかを選択してもよい。また、第2のキャラクタオブジェクト72(第1のキャラクタオブジェクト71でもよい)が有するアイテムの種類に応じて、攻撃動作の種類が異なってもよい。また、第1モードA又は第1モードBが設定されている場合、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71の位置から所定範囲に存在するアイテムオブジェクト78まで自動で移動し、当該アイテムオブジェクト78を取得する。また、第2のキャラクタオブジェクト72は、第2のキャラクタオブジェクト72から近いアイテムオブジェクト78を優先的に取得してもよいし、第1のキャラクタオブジェクト71から近いアイテムキャラクタ78を優先的に取得してもよい。また、第1モードCが設定されている場合、第2のキャラクタオブジェクト72は、敵キャラクタ76に対する攻撃やアイテムオブジェクト78の取得は行わず、第1のキャラクタオブジェクト71の位置から所定範囲を自動的に移動する。
【0153】
次に、プロセッサ81は、ポインタオブジェクト73を表示中か否かを判定する(ステップS123)。ポインタオブジェクト73が表示されていない場合(ステップS123:NO)、プロセッサ81は、操作データに基づいて、ポインタオブジェクト73を表示するための所定の指示(例えば、右コントローラ4の第1Rボタン60の押下)が行われたか否かを判定する(ステップS124)。
【0154】
所定の指示が行われなかった場合(ステップS124:NO)、プロセッサ81は、
図20に示す処理を終了する。所定の指示が行われた場合(ステップS124:YES)、プロセッサ81は、ポインタオブジェクト73をゲーム画面に表示させる(ステップS125)。
【0155】
ステップS125の処理を行った場合、又は、ステップS123でYESと判定した場合、プロセッサ81は、ポインタ移動処理を行う(ステップS126)。例えば、プロセッサ81は、右コントローラ4からの慣性データに基づいて、ポインタオブジェクト73をゲーム画面内で移動させる。例えば、プロセッサ81は、右コントローラ4の姿勢の変化に応じて、ポインタオブジェクト73のゲーム画面上での位置を変化させる。また、プロセッサ81は、タッチパネル13に対するタッチ操作が行われている場合、タッチ位置に対応するゲーム画面上の位置に、ポインタオブジェクト73を移動させる。また、プロセッサ81は、ポインタオブジェクト73のゲーム画面上の位置(2次元位置)に基づいて、ポインタオブジェクト73によって示される仮想空間内の位置(3次元位置)を算出する。例えば、プロセッサ81は、ポインタオブジェクト73のゲーム画面上の位置を通り、仮想カメラの撮像方向(視線方向)に平行な直線を求め、当該直線と仮想空間の地面とが交わる位置を、3次元位置として算出してもよい。ステップS126の処理によって更新されたポインタオブジェクト73の位置情報は、ポインタデータとしてメモリに記憶される。
【0156】
ステップS126に続いて、プロセッサ81は、第2のキャラクタオブジェクト72に所定のアクションを行わせるための所定の指示が行われたか否かを判定する(ステップS127)。例えば、プロセッサ81は、所定の指示として、右コントローラ4の第1Rボタン60の押下が行われたか否かを判定してもよい。また、プロセッサ81は、所定の指示として、タッチパネル13に対するタッチ操作が行われているか否か(タッチ位置を検出しているか否か)を判定してもよい。
【0157】
所定の指示が行われた場合(ステップS127:YES)、プロセッサ81は、第2のキャラクタオブジェクト72のアクション処理を行う(ステップS128)。具体的には、ポインタオブジェクト73によって示される仮想空間内の位置に仮想オブジェクトが存在する場合、プロセッサ81は、当該仮想オブジェクトの種類に応じてアクションの種類を決定する。例えば、ポインタオブジェクト73によって示される仮想空間内の位置に敵キャラクタ76が存在する場合、プロセッサ81は、攻撃動作を決定する。攻撃動作には複数あり、プロセッサ81は、複数の攻撃動作の中から何れかを選択してもよい。また、プロセッサ81は、複数の攻撃動作の中から何れかの攻撃動作をランダムに選択してもよいし、敵キャラクタ76の種類に応じて複数の攻撃動作の中から何れかを選択してもよい。また、例えば、ポインタオブジェクト73によって示される仮想空間内の位置にアイテムオブジェクト78が存在する場合、プロセッサ81は、当該アイテムオブジェクト78の取得動作を決定する。また、ポインタオブジェクト73によって示される仮想空間内の位置に仮想オブジェクトが存在しない場合、プロセッサ81は、移動動作を決定する。そして、プロセッサ81は、決定したアクションを第2のキャラクタオブジェクト72に行わせる。
【0158】
ステップS128の処理を行った場合、又は、ステップS127でNOと判定した場合、プロセッサ81は、ステップS128の処理を行ってから所定時間(例えば10秒)が経過したか否かを判定する(ステップS129)。具体的には、ステップS125でポインタオブジェクト73が表示された後、ステップS128において第2のキャラクタオブジェクト72にアクションを行わせた場合、当該アクションの実行からの経過時間が計測される。
【0159】
所定時間が経過した場合(ステップS129:YES)、プロセッサ81は、ポインタオブジェクト73をゲーム画面から消去する(ステップS130)。すなわち、第2のキャラクタオブジェクト72が所定のアクションを行ってから所定時間が経過するまでポインタオブジェクト73はゲーム画面に継続的に表示される。これにより、第1のプレイヤは、連続的に所定の指示を行うことで、第2のキャラクタオブジェクト72に、所定のアクションを連続的に行わせることができる。
【0160】
ステップS130の処理を実行した場合、ステップS129でNOと判定した場合、又は、ステップS124でNOと判定した場合、プロセッサ81は、
図20に示す処理を終了する。
【0161】
(第2モードのゲーム処理)
次に、ステップS108の第2モードのゲーム処理の詳細について説明する。
図21は、ステップS108の第2モードのゲーム処理の一例を示すフローチャートである。以下では、左コントローラ3が、第1のプレイヤ(第1のキャラクタオブジェクト71)に割り当てられ、右コントローラ4が、第2のプレイヤ(第2のキャラクタオブジェクト72)に割り当てられる場合について説明する。
【0162】
プロセッサ81は、左コントローラ3からの操作データに基づいて、第1のキャラクタオブジェクト71の移動処理を行う(ステップS141)。ステップS141の処理は、ステップS120の処理と同じである。
【0163】
次に、プロセッサ81は、左コントローラ3からの操作データに基づいて、第1のキャラクタオブジェクト71のアクション処理を行う(ステップS142)。具体的には、左コントローラ3のボタン33~36に対する押下が行われた場合、プロセッサ81は、当該ボタンの押下に応じたアクションを第1のキャラクタオブジェクト71に行わせる。例えば、左コントローラ3のボタン35が押下された場合、プロセッサ81は、第1のキャラクタオブジェクト71を仮想空間内でジャンプさせる。また、第1のキャラクタオブジェクト71の位置から所定範囲内に敵キャラクタ76が存在する場合において、左コントローラ3のボタン34が押下された場合、第1のキャラクタオブジェクト71に敵キャラクタ76に対する攻撃動作を行わせる。
【0164】
次に、プロセッサ81は、右コントローラ4からの操作データに基づいて、第2のキャラクタオブジェクト72の移動処理を行う(ステップS143)。具体的には、プロセッサ81は、右コントローラ4のアナログスティック52に対する方向入力に基づいて、第2のキャラクタオブジェクト72を仮想空間内で移動させる。なお、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71から所定距離以上離れないように制御される。また、第2のキャラクタオブジェクト72が移動した位置にアイテムオブジェクト78が存在する場合、プロセッサ81は、第2のキャラクタオブジェクト72に当該アイテムオブジェクト78を取得させる。移動後の第2のキャラクタオブジェクト72の位置は、第2キャラクタデータとしてメモリに記憶される。
【0165】
次に、プロセッサ81は、右コントローラ4からの操作データに基づいて、第2のキャラクタオブジェクト72のアクション処理を行う(ステップS144)。具体的には、右コントローラ4のボタン53~56に対する押下が行われた場合、プロセッサ81は、当該ボタンの押下に応じたアクション(敵キャラクタ76への攻撃、アイテムの取得等)を第2のキャラクタオブジェクト72に行わせる。以上でプロセッサ81は、
図21に示す処理を終了する。
【0166】
なお、上記フローチャートで示した処理は単なる例示に過ぎず、処理の順番や内容は適宜変更されてもよい。
【0167】
以上のように、本実施形態のゲームでは、第1モード又は第2モードが設定される。第1モードは、第1のプレイヤに割り当てられた操作入力(左コントローラ3、及び、右コントローラ4に対する操作入力)に基づいて、第1のプレイヤによる一人プレイゲームが行われるモードである。第2モードは、第1のプレイヤに割り当てられた操作入力(左コントローラ3に対する操作入力)と、第2のプレイヤに割り当てられた操作入力(右コントローラ4に対する操作入力)とに基づいて、第1のプレイヤ及び第2のプレイヤによる複数人プレイゲームが行われるモードである。
【0168】
具体的には、第1モードでは、第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクト71が仮想空間内で制御される(ステップS120及びS121)と共に、ゲーム画面における指示位置を表すポインタオブジェクト73が制御される(ステップS126)。すなわち、第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクト71及びポインタオブジェクト73の両方が制御される。第1モードでは、仮想空間内において、第2のキャラクタオブジェクト72が仮想空間内の状況に応じて自動で制御される(ステップS122)。例えば、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71の位置、敵キャラクタ76が第2のキャラクタオブジェクト72の周辺に存在するか否か、アイテムオブジェクト78が第2のキャラクタオブジェクト72の周辺に存在するか否か等の状況に応じて、自動で制御される。また、仮想空間内には第1のキャラクタオブジェクト71及び第2のキャラクタオブジェクト72が侵入できる第1領域と侵入できない第2領域とがあり、第2のキャラクタオブジェクト72が第2領域に侵入しないように、第2のキャラクタオブジェクト72が自動で制御されてもよい。また、第1モードでは、第2のキャラクタオブジェクト72は、ポインタオブジェクト73が示す仮想空間内の位置に対して所定のアクションを行う(ステップS128)。
【0169】
また、第2モードでは、第1のプレイヤに割り当てられた操作入力(左コントローラ3に対する操作入力)に基づいて、第1のキャラクタオブジェクト71が仮想空間内で制御される(ステップS141及びS142)。また、第2のプレイヤに割り当てられた操作入力(右コントローラ4に対する操作入力)に基づいて、第2のキャラクタオブジェクト72が仮想空間内で制御される(ステップS143及びS144)。
【0170】
これにより、第1モードでは、第1のプレイヤは、第1のキャラクタオブジェクト71を操作するとともに、自動で制御される第2のキャラクタオブジェクト72に所定のアクションを行わせることができる。また、第1のプレイヤは、ポインタオブジェクト73を制御することができ、所望の位置に対して所定のアクションを行わせることができる。このため、一人でゲームを行う第1モードにおいても、第1のキャラクタオブジェクト71のサポートを第2のキャラクタオブジェクト72にさせることができ、ゲームを有利に進めることができる。
【0171】
また、第2モードに切り替えることで、第1のプレイヤが第1のキャラクタオブジェクト71を制御し、第2のプレイヤが第2のキャラクタオブジェクト72を制御することができる。これにより、ゲームを複数人で行うことができる。第1モードと第2モードのどちらでもゲームを行うことができるため、複数のキャラクタの操作を、1人プレイでも複数人プレイでも行うことができる。
【0172】
また、本実施形態では、第1モードでのゲームの実行中に、第2モードに切り替えることができ、切替前の状態から第2モードでゲームを再開することができる。また、第2モードでのゲームの実行中に第1モードに切り替えて、ゲームを再開することができる。これにより、ゲームを終了することなく、一人でゲームを行う第1モードと複数人でゲームを行う第2モードとを切り替えることができる。
【0173】
また、本実施形態では、第1モードにおいて、第1のプレイヤに割り当てられた操作入力には、第2の操作装置(右コントローラ4)が備える慣性センサ(114、115)からの出力に応じた慣性データが含まれ、当該慣性データに基づいて、ポインタオブジェクト73の位置が制御される。また、第1のプレイヤに割り当てられた操作入力には、第1の操作装置(左コントローラ3)が備えるアナログスティック32に対する入力に応じた操作データが含まれ、当該操作データに基づいて、第1のキャラクタオブジェクト71の位置が制御される。これにより、第1のプレイヤは、第2の操作装置の姿勢を変化させることでポインタオブジェクト73の位置を制御することができ、第1の操作装置を用いて第1のキャラクタオブジェクト71の位置を制御しながら、比較的容易にポインタオブジェクト73の位置も制御することができる。
【0174】
また、本実施形態では、第1モードにおいて、タッチパネル13に対するタッチ入力に基づいて、ポインタオブジェクト73の位置の指示及び所定のアクションの指示が行われる。これにより、ゲーム画面上のタッチ位置に対応する仮想空間内の位置に対して、第2のキャラクタオブジェクト72に所定のアクションを行わせることができる。
【0175】
また、本実施形態では、第1モードにおいて、ポインタオブジェクト73が示す仮想空間内の位置にオブジェクトが存在する場合、第2のキャラクタオブジェクト72は、当該オブジェクトに対して、オブジェクトの種類に応じた所定のアクションを行う。
【0176】
例えば、ポインタオブジェクト73が示す仮想空間内の位置に敵キャラクタ76が存在する場合、第2のキャラクタオブジェクト72は、当該敵キャラクタ76に対して攻撃動作を行う。また、ポインタオブジェクト73が示す仮想空間内の位置にアイテムオブジェクト78が存在する場合、第2のキャラクタオブジェクト72は、当該アイテムオブジェクト78を取得する操作を行う。
【0177】
これにより、第1のプレイヤは、第2のキャラクタオブジェクト72に敵キャラクタ76を攻撃させたり、アイテムオブジェクト78を取得させたりすることができ、オブジェクトの有無や種類に応じて様々なアクションを行わせることができる。
【0178】
また、本実施形態では、第1モードにおいて、ポインタオブジェクト73が示す仮想空間内の位置に第2のキャラクタオブジェクト72が移動する。このため、第1のプレイヤは、自動で移動する第2のキャラクタオブジェクト72を所望の位置に移動させることができる。
【0179】
また、本実施形態では、第1モードにおいて、第2のキャラクタオブジェクト72は、第1のプレイヤの指示に応じて、所定のアクションを行う。これにより、第1のプレイヤは所望の位置に対して、所望のタイミングで第2のキャラクタオブジェクト72に所定のアクションを行わせることができる。
【0180】
また、本実施形態では、第1モードにおいて、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71の位置に応じて仮想空間の所定範囲を自動で移動し、第1のプレイヤの指示に応じて、ポインタオブジェクト73が示す仮想空間内の位置に対して所定のアクションを行う。これにより、第1のプレイヤは、第1のキャラクタオブジェクト71の位置を制御することで、ある程度第2のキャラクタオブジェクト72の移動範囲を定めつつ、指示に応じて第2の第2のキャラクタオブジェクト72に所定のアクションを行わせることができる。
【0181】
(変形例)
以上、本実施形態のゲーム処理ついて説明したが、上記実施形態は単なる一例であり、例えば以下のような変形が加えられてもよい。
【0182】
例えば、上記実施形態では、第1モードにおいて、第1のプレイヤは、左コントローラ3及び右コントローラ4を用いて、第1のキャラクタオブジェクト71及びポインタオブジェクト73を制御した。また、第2モードでは、第1のプレイヤは、左コントローラ3を用いて第1のキャラクタオブジェクト71を制御し、第2のプレイヤは、右コントローラ4を用いて第2のキャラクタオブジェクト72を制御した。他の実施形態では、第1モードにおいて、左コントローラ3及び右コントローラ4を用いて行われた第1のキャラクタオブジェクト71及びポインタオブジェクト73の制御を、左コントローラ3(又は右コントローラ4)のみを用いて行ってもよい。例えば、第1モードにおいて、左コントローラ3のアナログスティック32を用いて第1のキャラクタオブジェクト71の位置を制御するとともに、左コントローラ3の姿勢を変化させることでポインタオブジェクト73の位置を制御してもよい。また、第1モードでは、第2のキャラクタオブジェクト72は、仮想空間内の状況に応じて自動的に制御されるとともに、ポインタオブジェクト73が示す仮想空間の位置に対して所定のアクションを行う。また、第2モードでは、左コントローラ3を用いて第1のキャラクタオブジェクト71が制御され、右コントローラ4を用いて第2のキャラクタオブジェクト72が制御される。
【0183】
また、上記実施形態では、ポインタオブジェクト73は、ゲーム画面上の位置を指示するものであり、ゲーム画面上の2次元座標値を位置情報として有するものとした。他の実施形態では、ポインタオブジェクト73は、3次元オブジェクトとして仮想空間内に配置され、仮想空間内の3次元座標値を位置情報として有するものであってもよい。すなわち、ポインタオブジェクト73は、ゲーム画面に表示されるものであれば、ゲーム画面上を指示する2次元のオブジェクトであってもよいし、仮想空間内に配置された3次元又は2次元のオブジェクトであってもよい。
【0184】
また、上記実施形態では、第1モードにおいて、第1のキャラクタオブジェクト71の位置、敵キャラクタ76の位置、アイテムオブジェクト78の位置、仮想空間内の予め定められた領域等、仮想空間内の状況に応じて、第2のキャラクタオブジェクト72が自動で制御された。第2のキャラクタオブジェクト72は、仮想空間内の他の状況に応じて自動で制御されてもよい。例えば、第2のキャラクタオブジェクト72は、第1のキャラクタオブジェクト71と敵キャラクタ76との位置関係、第2のキャラクタオブジェクト72と敵キャラクタ76との位置関係、敵キャラクタ76や第1のキャラクタオブジェクト71の体力値、第1のキャラクタオブジェクト71とアイテムオブジェクト78との位置関係、第2のキャラクタオブジェクト72とアイテムオブジェクト78との位置関係等に応じて、自動で制御されてもよい。
【0185】
また、上記実施形態では、第1モードにおいて、第1のプレイヤの指示に応じて、第2のキャラクタオブジェクト72に所定のアクションを行わせた。他の実施形態では、第1のプレイヤの指示が無くても、第2のキャラクタオブジェクト72は、自動でポインタオブジェクト73が示す仮想空間内の位置に対して所定のアクションを行ってもよい。
【0186】
また、上記実施形態では、第1モードにおいて、第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクト71を制御するとともに、ポインタオブジェクト73を制御した。上記実施形態では、第1モードにおける「第1のプレイヤに割り当てられた操作入力」は、左コントローラ3及び右コントローラ4の操作部(アナログスティックやボタン)に対する入力、右コントローラ4自体の姿勢を変化させることによる入力である。他の実施形態では、第1モードにおける「第1のプレイヤに割り当てられた操作入力」は、左コントローラ3及び右コントローラ4の何れか一方の操作部に対する入力や姿勢による入力であってもよいし、統合コントローラの操作部に対する入力や姿勢による入力であってもよい。
【0187】
また、上記実施形態では、第2モードにおいて、第1のプレイヤに割り当てられた操作入力に基づいて、第1のキャラクタオブジェクト71を制御し、第2のプレイヤに割り当てられた操作入力に基づいて、第2のキャラクタオブジェクト72を制御した。上記実施形態では、第2モードにおける「第1のプレイヤに割り当てられた操作入力」は、左コントローラ3の操作部に対する入力であり、第2モードにおける「第2のプレイヤに割り当てられた操作入力」は、右コントローラ4の操作部に対する入力である。他の実施形態では、第2モードにおける「第1のプレイヤに割り当てられた操作入力」は、左コントローラ3、右コントローラ4、及び、統合コントローラのうちの少なくとも何れか1つを用いた入力であってもよい。また、第2モードにおける「第2のプレイヤに割り当てられた操作入力」は、「第1のプレイヤに割り当てられた操作入力」とは別の操作入力であって、左コントローラ3、右コントローラ4、及び、統合コントローラのうちの少なくとも何れか1つを用いた入力であってもよい。
【0188】
また、上記実施形態では、第2のキャラクタオブジェクト72に所定のアクションとして、移動、敵キャラクタ76への攻撃、アイテムオブジェクト78の取得等を行わせた。第2のキャラクタオブジェクト72に行わせる所定のアクションは、これらに限らず、他の任意のアクションであってもよい。
【0189】
また、上記実施形態では、第1モードにおいて、ポインタオブジェクト73が示す仮想空間の位置にオブジェクトが存在する場合、当該オブジェクトに対して所定のアクションが行われた。他の実施形態では、ポインタオブジェクト73が示す仮想空間の位置を含む所定範囲にオブジェクトが存在する場合、当該オブジェクトに対して所定のアクションが行われてもよい。
【0190】
また、上記実施形態では、第1モードにおいて、ポインタオブジェクト73が示す仮想空間の位置にオブジェクトが存在しない場合は、当該位置に第2のキャラクタオブジェクト72を移動させた。他の実施形態では、他のアクションが行われてもよい。例えば、ポインタオブジェクト73が示す仮想空間の位置にオブジェクトが存在しない場合は、当該位置にオブジェクトを出現させてもよい。
【0191】
また、上記実施形態では、第1モードにおいて、ポインタオブジェクト73は、右コントローラ4の姿勢(慣性センサからの出力に応じた慣性データ)又はタッチパネル13に対するタッチ操作に基づいて制御された。ポインタオブジェクト73の制御は他の方法により行われてもよい。例えば、左コントローラ3又は右コントローラ4のボタンやアナログスティックに対する入力に応じて、ポインタオブジェクト73の位置が制御されてもよい。また、本体装置2の姿勢(本体装置2が備える慣性センサからの出力に応じた慣性データ)に基づいて、ポインタオブジェクト73の位置が制御されてもよい。
【0192】
また、上記実施形態では、第1モードでゲームを実行中にプレイヤの指示に応じて第1モードのゲームが中断(一時停止)され、第1モードから第2モードに切り替えられ、第2モードでゲームが再開された。他の実施形態では、第1モードのゲームが中断されずに、プレイヤの指示に応じて第1モードから第2モードに切り替えられ、第2モードでゲームが再開されてもよい。
【0193】
また、上記実施形態では、第2モードにおいて、第1のプレイヤ及び第2のプレイヤによりゲームが行われるものとした。第2モードでは、3人以上のプレイヤによってゲームが行われてもよい。
【0194】
また、上記実施形態では、第1モードにおいて、自動的に制御される1の第2のキャラクタオブジェクト72を仮想空間内に登場させたが、他の実施形態では、第1モードにおいて、複数の第2のキャラクタオブジェクト72を仮想空間内に登場させてもよい。この場合、第2モードに切り替えられた場合には、第1のキャラクタオブジェクト71を第1のプレイヤが制御し、複数の第2のキャラクタオブジェクト72のそれぞれを第1のプレイヤとは異なる複数のプレイヤのそれぞれが制御してもよい。また、第1のキャラクタオブジェクト71を第1のプレイヤが制御し、複数の第2のキャラクタオブジェクト72を別の一人のプレイヤが制御してもよい。
【0195】
また、上記実施形態では、初期的に第1モード及び第2モードのうちの第1モードが設定され、第1のプレイヤの指示に応じて第1モードから第2モードに切り替えられたが、他の実施形態では、初期的に第2モードが設定されてもよい。
【0196】
また、上記実施形態では、ゲームシステム1における本体装置2において上述した処理が行われることとしたが、上述した処理は他の任意の情報処理装置(例えば、パーソナルコンピュータ、スマートフォン、タブレット端末)等において実行されてもよい。また、他の実施形態では、例えばインターネット等のネットワークで接続された複数の装置を含むゲームシステム(例えば端末とサーバとを含む情報処理システム)において上述した処理が行われてもよい。
【0197】
上記で説明した実施形態、他の実施形態及びこれらの変形例に係る構成は、互いに矛盾しない限り、任意に組み合わせることが可能である。また、上記説明は本発明の例示に過ぎず、さらに種々の改良や変形が加えられてもよい。
【符号の説明】
【0198】
1 ゲームシステム
2 本体装置
3 左コントローラ
4 右コントローラ
12 ディスプレイ
13 タッチパネル
81 プロセッサ
71 第1のキャラクタオブジェクト
72 第2のキャラクタオブジェクト
73 ポインタオブジェクト
76 敵キャラクタ
78 アイテムオブジェクト