(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024111118
(43)【公開日】2024-08-16
(54)【発明の名称】ゲームプログラム、情報処理システム、情報処理装置、および情報処理方法
(51)【国際特許分類】
A63F 13/69 20140101AFI20240808BHJP
A63F 13/55 20140101ALI20240808BHJP
A63F 13/837 20140101ALN20240808BHJP
【FI】
A63F13/69
A63F13/55
A63F13/837
【審査請求】未請求
【請求項の数】26
【出願形態】OL
(21)【出願番号】P 2024098027
(22)【出願日】2024-06-18
(62)【分割の表示】P 2022144906の分割
【原出願日】2022-09-12
(71)【出願人】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】100158780
【弁理士】
【氏名又は名称】寺本 亮
(74)【代理人】
【識別番号】100121359
【弁理士】
【氏名又は名称】小沢 昌弘
(74)【代理人】
【識別番号】100130269
【弁理士】
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】佐藤 祐也
(72)【発明者】
【氏名】久保木 崇
(57)【要約】
【課題】プレイヤキャラクタを操作するゲームにおいて、ノンプレイヤキャラクタに関連付けられた効果を所望の位置やタイミングで発動させることが可能なゲームプログラムを提供する。
【解決手段】情報処理システムの一例は、プレイヤキャラクタをプレイヤの操作に応じて移動させ、第1のノンプレイヤキャラクタを自動的に移動させ、プレイヤキャラクタが第1のノンプレイヤキャラクタに近づいた場合、プレイヤの操作入力に応じて、プレイヤキャラクタを、第1のノンプレイヤキャラクタに関連付けられた第1の効果を発動可能な発動可能状態に遷移させる。プレイヤキャラクタが発動可能状態である場合、プレイヤの操作入力に応じて、プレイヤキャラクタに所定のアクションを行わせるとともに、第1の効果を発動させる。
【選択図】
図11
【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータに、
第1の操作入力に基づいて、仮想空間内においてプレイヤキャラクタを移動させ、
前記仮想空間内において、第1のノンプレイヤキャラクタを自動的に移動させ、
前記プレイヤキャラクタと前記第1のノンプレイヤキャラクタとが所定の位置関係である場合、第2の操作入力に応じて、前記プレイヤキャラクタを、第1の効果を有する所定のアクションを発動可能な発動可能状態に遷移させ、
前記プレイヤキャラクタが前記発動可能状態である場合に、第3の操作入力に応じて、前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせる、ゲームプログラム。
【請求項2】
前記コンピュータにさらに、
前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせた場合、前記プレイヤキャラクタを、前記発動可能状態から、前記第1の効果を有する所定のアクションを発動可能でない発動不可状態に遷移させる、請求項1に記載のゲームプログラム。
【請求項3】
前記コンピュータにさらに、
前記仮想空間内において敵キャラクタを制御させ、
前記敵キャラクタに攻撃アクションを行わせ、
前記敵キャラクタの攻撃アクションに基づいて、前記プレイヤキャラクタにダメージを加え、
前記プレイヤキャラクタが前記発動可能状態である場合、前記敵キャラクタの前記攻撃アクションに基づくダメージを無効化又は軽減させる、請求項2に記載のゲームプログラム。
【請求項4】
前記コンピュータにさらに、
前記ダメージを無効化又は軽減させた場合に、前記プレイヤキャラクタを、前記発動可能状態から前記発動不可状態に遷移させる、請求項3に記載のゲームプログラム。
【請求項5】
前記コンピュータにさらに、
前記プレイヤキャラクタが前記発動可能状態から前記発動不可状態に遷移してから所定時間が経過するまでの間、前記プレイヤキャラクタを前記発動不可状態に維持させる、請求項4に記載のゲームプログラム。
【請求項6】
前記コンピュータにさらに、
前記発動可能状態か否かにかかわらず、前記第3の操作入力に基づいて、前記所定のアクションとして、攻撃アクションを前記プレイヤキャラクタに行わせ、
前記第1の効果は、前記攻撃アクションとともに発生する付加的な攻撃効果である、請求項1に記載のゲームプログラム。
【請求項7】
前記コンピュータにさらに、
複数種類の武器オブジェクトのうちの何れかの武器オブジェクトを前記プレイヤキャラクタに装備させ、
前記攻撃アクションは、前記プレイヤキャラクタが装備している武器オブジェクトを用いて攻撃を行うアクションであり、
前記付加的な攻撃効果は、前記プレイヤキャラクタが装備している武器オブジェクトの種類に応じて異なる性能を有する、請求項6に記載のゲームプログラム。
【請求項8】
前記攻撃効果は、前記仮想空間内の所定の障害オブジェクトを除去する効果を有する、請求項6に記載のゲームプログラム。
【請求項9】
前記コンピュータにさらに、
前記仮想空間内において、第2のノンプレイヤキャラクタを自動的に移動させ、
前記プレイヤキャラクタと前記第2のノンプレイヤキャラクタとが所定の位置関係である場合に、前記第2の操作入力に応じて、第2の効果を生じさせる、請求項1から8の何れかに記載のゲームプログラム。
【請求項10】
前記コンピュータにさらに、
前記第1のノンプレイヤキャラクタ及び前記第2のノンプレイヤキャラクタに自動的に戦闘を行わせる、請求項9に記載のゲームプログラム。
【請求項11】
プロセッサを備える情報処理システムであって、前記プロセッサは、
第1の操作入力に基づいて、仮想空間内においてプレイヤキャラクタを移動させ、
前記仮想空間内において、第1のノンプレイヤキャラクタを自動的に移動させ、
前記プレイヤキャラクタと前記第1のノンプレイヤキャラクタとが所定の位置関係である場合、第2の操作入力に応じて、前記プレイヤキャラクタを、第1の効果を有する所定のアクションを発動可能な発動可能状態に遷移させ、
前記プレイヤキャラクタが前記発動可能状態である場合に、第3の操作入力に応じて、前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせる、情報処理システム。
【請求項12】
前記プロセッサは、さらに、
前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせた場合、前記プレイヤキャラクタを、前記発動可能状態から、前記第1の効果を有する所定のアクションを発動可能でない発動不可状態に遷移させる、請求項11に記載の情報処理システム。
【請求項13】
前記プロセッサは、さらに、
前記仮想空間内において敵キャラクタを制御し、
前記敵キャラクタに攻撃アクションを行わせ、
前記敵キャラクタの攻撃アクションに基づいて、前記プレイヤキャラクタにダメージを加え、
前記プレイヤキャラクタが前記発動可能状態である場合、前記敵キャラクタの前記攻撃アクションに基づくダメージを無効化又は軽減させる、請求項12に記載の情報処理システム。
【請求項14】
前記プロセッサは、さらに、
前記ダメージを無効化又は軽減させた場合に、前記プレイヤキャラクタを、前記発動可能状態から前記発動不可状態に遷移させる、請求項13に記載の情報処理システム。
【請求項15】
前記プロセッサは、さらに、
前記プレイヤキャラクタが前記発動可能状態から前記発動不可状態に遷移してから所定時間が経過するまでの間、前記プレイヤキャラクタを前記発動不可状態に維持する、請求項14に記載の情報処理システム。
【請求項16】
前記プロセッサは、さらに、
前記発動可能状態か否かにかかわらず、前記第3の操作入力に基づいて、前記所定のアクションとして、攻撃アクションを前記プレイヤキャラクタに行わせ、
前記第1の効果は、前記攻撃アクションとともに発生する付加的な攻撃効果である、請求項11に記載の情報処理システム。
【請求項17】
前記プロセッサは、さらに、
複数種類の武器オブジェクトのうちの何れかの武器オブジェクトを前記プレイヤキャラクタに装備させ、
前記攻撃アクションは、前記プレイヤキャラクタが装備している武器オブジェクトを用いて攻撃を行うアクションであり、
前記付加的な攻撃効果は、前記プレイヤキャラクタが装備している武器オブジェクトの種類に応じて異なる性能を有する、請求項16に記載の情報処理システム。
【請求項18】
前記攻撃効果は、前記仮想空間内の所定の障害オブジェクトを除去する効果を有する、請求項16に記載の情報処理システム。
【請求項19】
前記プロセッサは、さらに、
前記仮想空間内において、第2のノンプレイヤキャラクタを自動的に移動させ、
前記プレイヤキャラクタと前記第2のノンプレイヤキャラクタとが所定の位置関係である場合に、前記第2の操作入力に応じて、第2の効果を生じさせる、請求項11から18の何れかに記載の情報処理システム。
【請求項20】
前記プロセッサは、さらに、
前記第1のノンプレイヤキャラクタ及び前記第2のノンプレイヤキャラクタに自動的に戦闘を行わせる、請求項19に記載の情報処理システム。
【請求項21】
プロセッサを備える情報処理装置であって、前記プロセッサは、
第1の操作入力に基づいて、仮想空間内においてプレイヤキャラクタを移動させ、
前記仮想空間内において、第1のノンプレイヤキャラクタを自動的に移動させ、
前記プレイヤキャラクタと前記第1のノンプレイヤキャラクタとが所定の位置関係である場合、第2の操作入力に応じて、前記プレイヤキャラクタを、第1の効果を有する所定のアクションを発動可能な発動可能状態に遷移させ、
前記プレイヤキャラクタが前記発動可能状態である場合に、第3の操作入力に応じて、前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせる、情報処理装置。
【請求項22】
前記プロセッサは、さらに、
前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせた場合、前記プレイヤキャラクタを、前記発動可能状態から、前記第1の効果を有する所定のアクションを発動可能でない発動不可状態に遷移させる、請求項21に記載の情報処理装置。
【請求項23】
前記プロセッサは、さらに、
前記仮想空間内において敵キャラクタを制御させ、
前記敵キャラクタに攻撃アクションを行わせ、
前記敵キャラクタの攻撃アクションに基づいて、前記プレイヤキャラクタにダメージを加え、
前記プレイヤキャラクタが前記発動可能状態である場合、前記敵キャラクタの前記攻撃アクションに基づくダメージを無効化又は軽減させる、請求項22に記載の情報処理装置。
【請求項24】
情報処理システムにおいて行われる情報処理方法であって、
第1の操作入力に基づいて、仮想空間内においてプレイヤキャラクタを移動させるステップと、
前記仮想空間内において、第1のノンプレイヤキャラクタを自動的に移動させるステップと、
前記プレイヤキャラクタと前記第1のノンプレイヤキャラクタとが所定の位置関係である場合、第2の操作入力に応じて、前記プレイヤキャラクタを、第1の効果を有する所定のアクションを発動可能な発動可能状態に遷移させるステップと、
前記プレイヤキャラクタが前記発動可能状態である場合に、第3の操作入力に応じて、前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせるステップと、を含む、情報処理方法。
【請求項25】
前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせた場合、前記プレイヤキャラクタを、前記発動可能状態から、前記第1の効果を有する所定のアクションを発動可能でない発動不可状態に遷移させるステップをさらに含む、請求項24に記載の情報処理方法。
【請求項26】
前記仮想空間内において敵キャラクタを制御するステップと、
前記敵キャラクタに攻撃アクションを行わせるステップと、
前記敵キャラクタの攻撃アクションに基づいて、前記プレイヤキャラクタにダメージを加えるステップと、
前記プレイヤキャラクタが前記発動可能状態である場合、前記敵キャラクタの前記攻撃アクションに基づくダメージを無効化又は軽減させるステップと、をさらに含む、請求項25に記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プレイヤキャラクタとノンプレイヤキャラクタとを用いてゲームを行うことが可能なゲームプログラム、情報処理システム、情報処理装置、および情報処理方法に関する。
【背景技術】
【0002】
従来より、プレイヤキャラクタとノンプレイヤキャラクタとが協力して戦闘を行うゲームがある(例えば、特許文献1参照)。具体的には、従来のゲームでは、プレイヤキャラクタと複数のノンプレイヤキャラクタとがあり、プレイヤキャラクタとノンプレイヤキャラクタがペアを組んだ状態において、当該ペアを組んだキャラクタに、プレイヤの指示に応じてサポート攻撃を行わせる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、ノンプレイヤキャラクタを自動制御させながら、ノンプレイヤキャラクタに関連する効果を所望の位置やタイミングで発動させるためには、改善の余地があった。
【0005】
それ故、本発明の目的は、プレイヤキャラクタを操作するゲームにおいて、ノンプレイヤキャラクタに関連付けられた効果を所望の位置やタイミングで発動させることが可能なゲームプログラム、情報処理システム、情報処理装置、および情報処理方法を提供することである。
【課題を解決するための手段】
【0006】
上記の課題を解決すべく、本発明は、以下の構成を採用した。
【0007】
(第1の構成)
第1の構成のゲームプログラムは、情報処理装置のコンピュータに、第1の操作入力に基づいて、仮想空間内においてプレイヤキャラクタを移動させ、前記仮想空間内において、第1のノンプレイヤキャラクタを自動的に移動させる。また、ゲームプログラムは、コンピュータに、前記プレイヤキャラクタと前記第1のノンプレイヤキャラクタとが所定の位置関係である場合、第2の操作入力に応じて、前記プレイヤキャラクタを、第1の効果を有する所定のアクションを発動可能な発動可能状態に遷移させ、前記プレイヤキャラクタが前記発動可能状態である場合に、第3の操作入力に応じて、前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせる。
【0008】
上記によれば、第1のノンプレイヤキャラクタを用いてプレイヤキャラクタを発動可能状態に遷移させ、発動可能状態において第3の操作入力に応じて、第1の効果を有する所定のアクションをプレイヤキャラクタに行わせることができる。これにより、第1のノンプレイヤキャラクタを用いて第1の効果を発動させることができ、所望の位置やタイミングで第1の効果を発動させることができる。
【0009】
(第2の構成)
第2の構成では、上記第1の構成において、前記コンピュータにさらに、前記第1の効果を有する所定のアクションを前記プレイヤキャラクタに行わせた場合、前記プレイヤキャラクタを、前記発動可能状態から、前記第1の効果を有する所定のアクションを発動可能でない発動不可状態に遷移させてもよい。
【0010】
上記によれば、第1の効果を有する所定のアクションが行われた場合、プレイヤキャラクタを発動不可状態に遷移させる。発動可能状態にさせるために毎回、プレイヤキャラクタと第1のノンプレイヤキャラクタとが所定の位置関係になるようにプレイヤキャラクタを移動させる必要がある。このため、第1のノンプレイヤキャラクタの利用を促進することができる。
【0011】
(第3の構成)
第3の構成では、上記第2の構成において、前記コンピュータにさらに、前記仮想空間内において敵キャラクタを制御させ、前記敵キャラクタに攻撃アクションを行わせ、前記敵キャラクタの攻撃アクションに基づいて、前記プレイヤキャラクタにダメージを加え、前記プレイヤキャラクタが前記発動可能状態である場合、前記敵キャラクタの前記攻撃アクションに基づくダメージを無効化又は軽減させてもよい。
【0012】
上記によれば、発動可能状態においてさらにプレイヤキャラクタへのダメージを無効化又は軽減させることができる。発動可能状態に遷移させることのメリットを更に提供することができ、第1のノンプレイヤキャラクタの利用を促進することができる。
【0013】
(第4の構成)
第4の構成では、上記第3の構成において、前記コンピュータにさらに、前記ダメージを無効化又は軽減させた場合に、前記プレイヤキャラクタを、前記発動可能状態から前記発動不可状態に遷移させてもよい。
【0014】
上記によれば、一度プレイヤキャラクタを発動可能状態に遷移させることで、所定のアクションとともに第1の効果を発動させるか、敵キャラクタの攻撃に対するダメージを無効化又は軽減させる効果のどちらかを生じさせることができる。敵キャラクタの攻撃を受けた場合は、発動不可状態になり所定のアクションとともに第1の効果を発動させることはできないが、敵キャラクタの攻撃に対するダメージを無効化又は軽減させるため、プレイヤにとってメリットがある。また、敵キャラクタからの攻撃により発動不可状態になるため、プレイヤに有利になり過ぎず、ゲームのバランスを維持することができる。
【0015】
(第5の構成)
第5の構成では、上記第2から第4の構成の何れかにおいて、前記コンピュータにさらに、前記プレイヤキャラクタが前記発動可能状態から前記発動不可状態に遷移してから所定時間が経過するまでの間、前記プレイヤキャラクタを前記発動不可状態に維持させてもよい。
【0016】
上記によれば、プレイヤキャラクタが発動可能状態から発動不可状態に遷移した場合、所定時間が経過するまでの間、発動不可状態が維持されるため、プレイヤキャラクタが短時間で連続して発動可能状態に遷移することを抑制することができる。
【0017】
(第6の構成)
第6の構成では、上記第1から第5の構成の何れかにおいて、前記コンピュータにさらに、前記発動可能状態か否かにかかわらず、前記第3の操作入力に基づいて、前記所定のアクションとして、攻撃アクションを前記プレイヤキャラクタに行わせてもよい。前記第1の効果は、前記攻撃アクションとともに発生する付加的な攻撃効果であってもよい。
【0018】
上記によれば、通常の攻撃アクションに付加して、第1の効果を発動することができるため、プレイヤにとって操作性が良く、発動可能状態において狙いを定めて第1の効果を発動し易くすることができる。
【0019】
(第7の構成)
第7の構成では、上記第6の構成において、前記コンピュータにさらに、複数種類の武器オブジェクトのうちの何れかの武器オブジェクトを前記プレイヤキャラクタに装備させてもよい。前記攻撃アクションは、前記プレイヤキャラクタが装備している武器オブジェクトを用いて攻撃を行うアクションであり、前記付加的な攻撃効果は、前記プレイヤキャラクタが装備している武器オブジェクトの種類に応じて異なる性能を有してもよい。
【0020】
上記によれば、武器オブジェクトの種類に依って異なる性能を有する攻撃効果を発動することができる。また、プレイヤは、発動可能状態において所望の武器オブジェクトを選択し、第3の操作入力に応じて第1の効果を発動させることができる。
【0021】
(第8の構成)
第8の構成では、上記第6又は第7の構成において、前記攻撃効果は、前記仮想空間内の所定の障害オブジェクトを除去する効果を有してもよい。
【0022】
上記によれば、さらに障害オブジェクトを除去することができる。プレイヤは、発動可能状態において狙いを定めて障害オブジェクトを除去することができる。
【0023】
(第9の構成)
第9の構成では、上記第1から第8の構成の何れかにおいて、前記コンピュータにさらに、前記仮想空間内において、第2のノンプレイヤキャラクタを自動的に移動させ、前記プレイヤキャラクタと前記第2のノンプレイヤキャラクタとが所定の位置関係である場合に、前記第2の操作入力に応じて、第2の効果を生じさせてもよい。
【0024】
上記によれば、プレイヤキャラクタを第2のノンプレイヤキャラクタと所定の位置関係にさせて第2の操作入力を行うことで、第2の効果を生じさせることができる。第1のノンプレイヤキャラクタについては、プレイヤキャラクタが所定の位置関係にある場合において第2の操作入力を行った場合、プレイヤキャラクタが発動可能状態に遷移する。このため、プレイヤの意図に反して発動可能状態に遷移しても、即第1の効果が発動せず、プレイヤの意図に反した効果が生じることを抑制することができる。
【0025】
(第10の構成)
第10の構成では、上記第9の構成において、前記コンピュータにさらに、前記第1のノンプレイヤキャラクタ及び前記第2のノンプレイヤキャラクタに自動的に戦闘を行わせてもよい。
【0026】
上記によれば、第1のノンプレイヤキャラクタ及び第2のノンプレイヤキャラクタが自動的に戦闘を行うため、プレイヤにとってメリットがある。
【0027】
また、他の実施形態は、上記ゲームプログラムを実行する情報処理システムであってもよいし、情報処理装置であってもよいし、情報処理システムにおいて実行される情報処理方法であってもよい。
【発明の効果】
【0028】
本発明によれば、プレイヤキャラクタを発動可能状態に遷移させてから第1の効果を発動することができ、所望の位置やタイミングで第1のノンプレイヤキャラクタに関連する第1の効果を発動させることができる。
【図面の簡単な説明】
【0029】
【
図1】本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図
【
図2】本体装置2の内部構成の一例を示すブロック図
【
図5】本実施形態のゲームが実行された場合にディスプレイ12又は据置型モニタに表示されるゲーム画像の一例を示す図
【
図6】プレイヤキャラクタ100が第1のNPC110に近づいたときのゲーム画像の一例を示す図
【
図7】プレイヤキャラクタ100が第1のNPC110に関連付けられた第1の効果を有する所定のアクションを発動可能な状態になったときのゲーム画像の一例を示す図
【
図8】プレイヤキャラクタ100が発動可能状態である場合において、敵キャラクタ200から攻撃を受けたときのゲーム画像の一例を示す図
【
図9】プレイヤキャラクタ100が発動可能状態である場合において、敵キャラクタ200から攻撃を受けた後のゲーム画像の一例を示す図
【
図10】プレイヤキャラクタ100が発動可能状態において剣オブジェクト101を用いて攻撃アクションを行う前のゲーム画像の一例を示す図
【
図11】プレイヤキャラクタ100が発動可能状態において剣オブジェクト101を用いて攻撃アクションを行った後のゲーム画像の一例を示す図
【
図12】プレイヤキャラクタ100が発動可能状態において剣オブジェクト102を用いて攻撃アクションを行う前のゲーム画像の一例を示す図
【
図13】プレイヤキャラクタ100が発動可能状態において剣オブジェクト102を用いて攻撃アクションを行った後のゲーム画像の一例を示す図
【
図14】水オブジェクト105を用いて仮想空間に配置された他のオブジェクトを除去する様子のゲーム画像の一例を示す図
【
図15】水オブジェクト105が他のオブジェクトに当たった場合に当該他のオブジェクトが除去されるときのゲーム画像の一例を示す図
【
図16】ゲーム処理の実行中に本体装置2のメモリに記憶されるデータの一例を示す図
【
図17】本体装置2のプロセッサ81によって実行されるゲーム処理の一例を示すフローチャート
【
図18】ステップS105の状態遷移処理の一例を示すフローチャート
【
図19】ステップS106におけるプレイヤキャラクタの攻撃アクション処理の一例を示すフローチャート
【
図20】ステップS107におけるプレイヤキャラクタのダメージ処理の一例を示すフローチャート
【発明を実施するための形態】
【0030】
(システム構成)
以下、本実施形態の一例に係るゲームシステムについて説明する。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる。以下では、本実施形態のゲームシステム1のハードウェア構成について説明し、その後に本実施形態のゲームシステム1の制御について説明する。
【0031】
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。
図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
【0032】
左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
【0033】
本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
【0034】
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
【0035】
図2は、本体装置2の内部構成の一例を示すブロック図である。
【0036】
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
【0037】
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【0038】
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
【0039】
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
【0040】
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、第1の通信態様としてWi-Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。
【0041】
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
【0042】
プロセッサ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は、クレードルを介してデータ(例えば、画像データや音声データ)を据置型モニタ等に出力することができる。
【0043】
本体装置2は、タッチパネル13の制御を行う回路であるタッチパネルコントローラ86を備える。タッチパネルコントローラ86は、タッチパネル13とプロセッサ81との間に接続される。タッチパネルコントローラ86は、タッチパネル13からの信号に基づいて、例えばタッチ入力が行われた位置を示すデータを生成して、プロセッサ81へ出力する。
【0044】
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
【0045】
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
【0046】
図3は、左コントローラ3の一例を示す六面図である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0047】
左コントローラ3は、アナログスティック32を備える。
図3に示すように、アナログスティック32は、ハウジング31の主面に設けられる。アナログスティック32は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック32を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。なお、左コントローラ3は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック32を押下する入力が可能である。
【0048】
左コントローラ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プログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
【0049】
また、左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。
【0050】
図4は、右コントローラ4の一例を示す六面図である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0051】
右コントローラ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を備える。
【0052】
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
【0053】
(ゲームの概要)
次に、本実施形態のゲームについて説明する。
図5は、本実施形態のゲームが実行された場合にディスプレイ12又は据置型モニタに表示されるゲーム画像の一例を示す図である。
【0054】
図5に示されるように、3次元の仮想空間(ゲーム空間)には、プレイヤキャラクタ100と敵キャラクタとが配置される。プレイヤキャラクタ100は、プレイヤによって操作されるキャラクタであり、例えば、左アナログスティック32に対する操作に応じて仮想空間を移動する。また、敵キャラクタ200は、プロセッサ81によって自動で制御される。
【0055】
プレイヤキャラクタ100は、プレイヤの指示に応じて攻撃アクションを行う。具体的には、プレイヤキャラクタ100は、ゲームの進行中に複数の武器オブジェクトを取得して所有することができる。プレイヤは、所有する複数の武器オブジェクトの中から何れかを選択し、プレイヤキャラクタ100に装備させる。プレイヤキャラクタ100は、プレイヤの操作入力に応じて、装備している武器オブジェクトを用いた攻撃アクションを行う。
【0056】
本実施形態のゲームでは、武器オブジェクトとして、基本的にプレイヤキャラクタ100が持った状態で用いられる剣オブジェクト、槍オブジェクト、斧オブジェクト等がある。プレイヤキャラクタ100の攻撃アクションは、装備している武器オブジェクトによって異なる。例えば、プレイヤキャラクタ100が剣オブジェクトを装備している場合において、攻撃のための操作入力が行われた場合、プレイヤキャラクタ100は剣オブジェクトを振る攻撃アクションを行う。また、プレイヤキャラクタ100が槍オブジェクトを装備している場合において、攻撃のための操作入力が行われた場合、プレイヤキャラクタ100は槍オブジェクトを突く攻撃アクションを行う。また、武器オブジェクトとして、プレイヤキャラクタ100が仮想空間に射出可能な弓矢オブジェクトがある。また、複数の武器オブジェクトのそれぞれは、予め異なる攻撃力を有している。攻撃力の大きな武器オブジェクトを用いて攻撃アクションが行われ、当該攻撃アクションが敵キャラクタ200に当たった場合、敵キャラクタ200には大きなダメージが加わる。
【0057】
プレイヤキャラクタ100は、複数の敵キャラクタ200を倒しながら仮想空間を移動する。プレイヤキャラクタ100はライフ値を有しており、敵キャラクタ200から攻撃を受けるとライフ値が減少する。プレイヤキャラクタ100のライフ値がゼロになるとゲームオーバーとなり、例えば、セーブされた地点まで戻ってゲームが再開される。
【0058】
また、
図5に示されるように、仮想空間には第1のノンプレイヤキャラクタ(NPC)110と第2のノンプレイヤキャラクタ(NPC)111とが配置される。第1のNPC110及び第2のNPC111は、プレイヤキャラクタ100の仲間のキャラクタであり、プロセッサ81によって自動で制御される。プレイヤキャラクタ100が仮想空間を移動すると、第1のNPC110及び第2のNPC111は、プレイヤキャラクタ100に追従して移動する。例えば、第1のNPC110及び第2のNPC111は、プレイヤキャラクタ100から所定の距離以上離れないように仮想空間内を自動で移動する。また、第1のNPC110及び第2のNPC111は、プレイヤキャラクタ100を補助する。例えば、第1のNPC110及び第2のNPC111は、自動で敵キャラクタ200と格闘し、敵キャラクタ200を倒す。
【0059】
第1のNPC110及び第2のNPC111には、それぞれ、特有の効果が関連付けられている。プレイヤキャラクタ100が第1のNPC110又は第2のNPC111に近づいた場合、第1のNPC110又は第2のNPC111に関連付けられた効果を発動可能となる。
【0060】
図6は、プレイヤキャラクタ100が第1のNPC110に近づいたときのゲーム画像の一例を示す図である。第1のNPC110及び第2のNPC111は、例えば、プレイヤキャラクタ100の移動に応じて自動で移動するが、プレイヤキャラクタ100が停止すると、第1のNPC110及び第2のNPC111も停止する。この状態でプレイヤは、左アナログスティック32を用いてプレイヤキャラクタ100を第1のNPC110に向かって移動させる。
図6に示されるように、プレイヤキャラクタ100が第1のNPC110に近づいた場合(プレイヤキャラクタ100と第1のNPC110との距離が所定値以下になった場合)、例えば、Aボタンの押下を促すボタン画像400が表示される。このとき、プレイヤがAボタンを押下すると、プレイヤキャラクタ100は、第1のNPC110に関連付けられた第1の効果を有する所定のアクションを発動可能な状態になる。例えば、第1のNPC110は、水の属性を有するキャラクタであり、第1のNPC110に関連付けられた第1の効果は、水に関連した効果である。
【0061】
図7は、プレイヤキャラクタ100が第1のNPC110に関連付けられた第1の効果を有する所定のアクションを発動可能な状態になったときのゲーム画像の一例を示す図である。
図7に示されるように、プレイヤキャラクタ100が第1のNPC110に近づいてAボタンが押下された場合、プレイヤキャラクタ100は、水オブジェクト105をまとった状態(水オブジェクト105に囲まれた状態)になる。この状態を、ここでは「発動可能状態」ということがある。水オブジェクト105は、例えば、水を模した半透明なオブジェクトである。プレイヤキャラクタ100はこの状態で仮想空間内を移動したり、向きを変更したり、攻撃アクションを行ったりすることができる。
【0062】
発動可能状態は、所定の有効期間(例えば10秒)継続される。プレイヤキャラクタ100が発動可能状態になってから所定の有効期間が経過すると、プレイヤキャラクタ100は通常の状態(発動不可状態)に戻る。
【0063】
プレイヤキャラクタ100は、発動可能状態では、敵キャラクタ200からの攻撃を1回だけ防御することができる。
【0064】
図8は、プレイヤキャラクタ100が発動可能状態である場合において、敵キャラクタ200から攻撃を受けたときのゲーム画像の一例を示す図である。
図9は、プレイヤキャラクタ100が発動可能状態である場合において、敵キャラクタ200から攻撃を受けた後のゲーム画像の一例を示す図である。
【0065】
図8に示されるように、プレイヤキャラクタ100が発動可能状態において、敵キャラクタ200から攻撃を受けた場合、敵キャラクタ200からの攻撃は無効化(又は軽減され)、プレイヤキャラクタ100はダメージを受けない(又はダメージが軽減される)。すなわち、敵キャラクタ200からの攻撃がプレイヤキャラクタ100(又は水オブジェクト105)に当たった場合でも、プレイヤキャラクタ100のライフ値は減少しない(又はライフ値の減少量が小さくなる)。そして、敵キャラクタ200からの攻撃が無効化又は軽減された場合、水オブジェクト105は、上記所定の有効期間が経過する前でも消去され、プレイヤキャラクタ100は発動可能状態から発動不可状態に遷移する。プレイヤキャラクタ100が発動可能状態から発動不可状態になった場合、所定の制限期間が経過するまでは、プレイヤキャラクタ100は、再び発動可能状態に遷移しない。例えば、
図9に示されるように、所定の制限期間では、プレイヤキャラクタ100が第1のNPC110の近傍に移動しても、ボタン画像400が、Aボタンの押下が有効でないことを示す表示態様になる。具体的には、ボタン画像400にゲージが表示され、時間経過に応じてゲージが伸びる。所定の制限期間が経過すると、ボタン画像400のゲージが端まで伸び、プレイヤキャラクタ100は、再び発動可能状態に遷移可能となる(Aボタンの押下が有効となる)。
【0066】
所定の制限期間は、例えば、敵キャラクタ200からの攻撃が無効化又は軽減されてから一定時間(例えば10秒)が経過するまでの期間であってもよい。また、所定の制限期間は、プレイヤキャラクタ100が発動可能状態に遷移してから一定時間(例えば10秒)が経過するまでの期間であってもよい。この場合、プレイヤキャラクタ100が発動可能状態になってから上記所定の有効期間が経過すると、プレイヤキャラクタ100は通常の状態(発動不可状態)に戻るが、その時には所定の制限期間は経過しており、プレイヤキャラクタ100はすぐに発動可能状態に遷移可能であってもよい。一方、プレイヤキャラクタ100が発動可能状態になってから上記所定の有効期間が経過するまでに、例えば敵キャラクタ200からの攻撃を受けて当該攻撃を無効化又は軽減した場合は、まだ所定の制限期間は経過しておらず、プレイヤキャラクタ100はすぐに発動可能状態に遷移することはできない。
【0067】
このように、本実施形態のゲームでは、プレイヤキャラクタ100が発動可能状態では敵キャラクタ200からの攻撃が当たった場合でも、当該攻撃を無効化又は軽減することができる。
【0068】
なお、本実施形態では、敵キャラクタ200からの攻撃以外にもプレイヤキャラクタ100のライフ値が減少されることがある。例えば、仮想空間には高温環境があり、プレイヤキャラクタ100が高温環境にいる場合に、プレイヤキャラクタ100のライフ値が減少される。例えば、火山のシーンでは溶岩があり、プレイヤキャラクタ100が溶岩に近づいた場合、プレイヤキャラクタ100のライフ値が減少する。また、炎が噴き出す場所があり、プレイヤキャラクタ100が炎に当たるとプレイヤキャラクタ100のライフ値が減少する。プレイヤキャラクタ100がこのような高温環境にいる場合でも、プレイヤキャラクタ100が発動可能状態である場合、プレイヤキャラクタ100のライフ値は減少しない(又はライフ値の減少量が小さくなる)。すなわち、水オブジェクト105は水の属性を有しているため、プレイヤキャラクタ100が水オブジェクト105をまとった状態ではプレイヤキャラクタ100は高温環境から保護され、ダメージを受けない(又はダメージが軽減される)。なお、プレイヤキャラクタ100が発動可能状態でない場合でも、水の属性を有する所定のアイテムを有している場合、当該アイテムを用いてこのような高温環境からのダメージを軽減できたり、ダメージを受けなかったりしてもよい。
【0069】
次に、プレイヤキャラクタ100が発動可能状態において攻撃アクションを行う場合について説明する。
図10は、プレイヤキャラクタ100が発動可能状態において剣オブジェクト101を用いて攻撃アクションを行う前のゲーム画像の一例を示す図である。
図11は、プレイヤキャラクタ100が発動可能状態において剣オブジェクト101を用いて攻撃アクションを行った後のゲーム画像の一例を示す図である。
【0070】
図10に示されるように、プレイヤキャラクタ100が装備する武器オブジェクトとして、剣オブジェクト101がプレイヤによって選択された場合、プレイヤキャラクタ100は剣オブジェクト101を装備した状態(使用する状態)になる。この状態で攻撃アクションのための操作入力(例えばYボタン56の押下)が行われた場合、
図11に示されるように、プレイヤキャラクタ100が剣オブジェクト101を振る攻撃アクションを行うとともに、水オブジェクト105が仮想空間に射出される。水オブジェクト105は、水の性質を有するオブジェクトであり、敵キャラクタ200への攻撃効果を有する。射出された水オブジェクト105は、仮想空間を移動し、所定距離だけ移動して消える。水オブジェクト105が敵キャラクタ200に当たった場合、敵キャラクタ200にダメージが加えられる。
【0071】
水オブジェクト105が仮想空間に射出された場合、プレイヤキャラクタ100は、発動可能状態から発動不可状態に遷移する。発動可能状態から発動不可状態に遷移した場合、所定の制限期間が経過するまでは、プレイヤキャラクタ100は、再び発動可能状態に遷移しない。所定の制限期間は、水オブジェクト105が射出されてから一定時間(例えば10秒)が経過するまでの期間であってもよい。また、所定の制限期間は、プレイヤキャラクタ100が発動可能状態に遷移してから一定時間が経過するまでの期間であってもよい。
【0072】
水オブジェクト105が射出される方向は、プレイヤキャラクタ100の向きに応じて定められる。具体的には、水オブジェクト105が射出される方向は、プレイヤキャラクタ100がいる地面に沿った向きであって、プレイヤキャラクタ100の前方向である。プレイヤは左アナログスティック32を用いてプレイヤキャラクタ100の向きを制御し、水オブジェクト105の射出方向を制御することができる。
【0073】
このように、プレイヤキャラクタ100が発動可能状態において、プレイヤキャラクタ100が剣オブジェクト101を振る攻撃アクションを行った場合、当該攻撃アクションとともに、付加的な攻撃効果である水オブジェクト105が仮想空間に射出される。これにより、水オブジェクト105を用いて敵キャラクタ200に攻撃を加えることができる。
【0074】
ここで、仮想空間に射出される水オブジェクト105の形状、大きさ(幅)、移動速度、飛距離、攻撃力等の性能は、攻撃アクションに用いられた武器オブジェクトによって異なる。
【0075】
図12は、プレイヤキャラクタ100が発動可能状態において剣オブジェクト102を用いて攻撃アクションを行う前のゲーム画像の一例を示す図である。
図13は、プレイヤキャラクタ100が発動可能状態において剣オブジェクト102を用いて攻撃アクションを行った後のゲーム画像の一例を示す図である。
【0076】
プレイヤは、プレイヤキャラクタ100が発動可能状態である場合でも、複数の武器オブジェクトの中から何れかを選択し、選択した武器オブジェクトをプレイヤキャラクタ100に装備させることができる。
図12に示されるように、例えば、武器オブジェクトとして剣オブジェクト102が選択された場合、プレイヤキャラクタ100は剣オブジェクト102を装備した状態になる。この状態で攻撃のための操作入力(例えばYボタン56の押下)が行われた場合、
図13に示されるように、プレイヤキャラクタ100が剣オブジェクト102を振る攻撃アクションを行うとともに、水オブジェクト105が仮想空間に射出される。
【0077】
図11と
図13とを比較すると明らかなように、剣オブジェクト102を用いて攻撃アクションが行われたときに射出される水オブジェクト105は、剣オブジェクト101を用いて攻撃アクションが行われたときに射出される水オブジェクト105よりも大きい(幅が広い)。このため、水オブジェクト105の射出方向と敵キャラクタ200との位置関係が同じ場合であっても、剣オブジェクト101を用いて攻撃アクションが行われた場合は水オブジェクト105は敵キャラクタ200に当たらないが、剣オブジェクト102を用いて攻撃アクションが行われた場合は水オブジェクト105は敵キャラクタ200に当たる。水オブジェクト105が敵キャラクタ200に当たると、敵キャラクタ200はダメージを受ける。敵キャラクタ200のダメージが閾値を超えた場合(ライフ値がゼロになった場合)、敵キャラクタ200は倒れる。
【0078】
また、剣オブジェクト102を用いて攻撃アクションが行われたときと、剣オブジェクト101を用いて攻撃アクションが行われたときとで、水オブジェクト105の飛距離が異なる。例えば、剣オブジェクト102を用いて攻撃アクションが行われたときは、剣オブジェクト101を用いて攻撃アクションが行われたときよりも、水オブジェクト105の飛距離が短くてもよい。また、剣オブジェクト102を用いて攻撃アクションが行われたときと、剣オブジェクト101を用いて攻撃アクションが行われたときとで、水オブジェクト105の移動速度が異なる。例えば、剣オブジェクト102を用いて攻撃アクションが行われたときは、剣オブジェクト101を用いて攻撃アクションが行われたときよりも、水オブジェクト105の移動速度が遅くてもよい。
【0079】
水オブジェクト105が敵キャラクタ200に当たった場合、その時点では水オブジェクト105は消えずに(停止せずに)、さらに射出方向に移動し、予め定められた飛距離まで進んで消えてもよい。この場合には、水オブジェクト105が当たった敵キャラクタ200のみならず、当該当たった敵キャラクタよりもさらに射出方向にいる敵キャラクタに対しても攻撃を加えることができる。なお、水オブジェクト105が敵キャラクタ200に当たった場合、その時点で水オブジェクト105が消えてもよい。
【0080】
また、水オブジェクト105は所定の攻撃力を有している。水オブジェクト105の攻撃力は、用いられた武器オブジェクトの攻撃力によって異なる。例えば、剣オブジェクト101の攻撃力として予め「3」が設定されており、剣オブジェクト102の攻撃力として予め「5」が設定されている。この場合、剣オブジェクト101を用いて攻撃アクションが行われた場合の水オブジェクト105の攻撃力は、「3」であり、剣オブジェクト102を用いて攻撃アクションが行われた場合の水オブジェクト105の攻撃力は、「5」である。このため、剣オブジェクト102が用いられた場合は、剣オブジェクト101が用いられた場合よりも、水オブジェクト105が敵キャラクタ200に当たったときの敵キャラクタ200のダメージが大きい。
【0081】
なお、プレイヤキャラクタ100と敵キャラクタ200との距離が近い場合、剣オブジェクト101又は102を用いた攻撃アクションによって射出された水オブジェクト105が敵キャラクタ200に当たり、かつ、剣オブジェクト101又は102が敵キャラクタ200に当たることもある。この場合、敵キャラクタ200には、水オブジェクト105が当たったことによるダメージと、剣オブジェクト101又は102が当たったことによるダメージとが加えられてもよい。なお、別の実施形態では、この場合、水オブジェクト105によるダメージのみが加えられてもよい。
【0082】
また、図示は省略するが、槍オブジェクトが装備された場合と、剣オブジェクト101又は102が装備された場合とで、攻撃アクションが行われたときに射出される水オブジェクト105の大きさ、飛距離、移動速度、攻撃力が異なる。例えば、プレイヤキャラクタ100が発動可能状態において、槍オブジェクトを用いて攻撃アクションが行われた場合、剣オブジェクト101又は102を用いて攻撃アクションが行われる場合と比べて、水オブジェクト105の幅は狭く、水オブジェクト105の移動速度が速く、水オブジェクト105の飛距離が長くなる。このため、槍オブジェクトが選択された場合は、より遠くの敵キャラクタ200に対して攻撃を加えることができる。
【0083】
また、敵キャラクタ200には、異なる属性を有する敵キャラクタがある。例えば、敵キャラクタ200には、火の属性を有する敵キャラクタとそれ以外の属性を有する敵キャラクタとがある。火の属性を有する敵キャラクタに水オブジェクト105が当たった場合は、火の属性を有さない敵キャラクタに水オブジェクト105が当たった場合よりも、大きなダメージを与えることができる。例えば、火の属性を有さない敵キャラクタに対しては複数回水オブジェクト105を当てなければ当該敵キャラクタを倒すことができないが、火の属性を有する敵キャラクタに対しては、水オブジェクト105を1回だけ当てることで当該敵キャラクタを倒すことができてもよい。
【0084】
このように、プレイヤキャラクタ100が発動可能状態であるときに所定の攻撃アクションを行うと、水オブジェクト105を仮想空間に射出することができ、水オブジェクト105を用いて敵キャラクタ200に攻撃を加えることができる。装備している武器オブジェクトの種類によって水オブジェクト105の形状、大きさ、飛距離、移動速度、攻撃力等が異なる。このため、プレイヤは、自らの好みや敵キャラクタ200の状況に応じて、装備する武器オブジェクトを使い分けて、水オブジェクト105を用いた攻撃を行うことができる。また、水オブジェクト105は水の属性を有しており、敵キャラクタ200も様々な属性を有している。このため、プレイヤは、敵キャラクタ200の属性によって、水オブジェクト105を用いた攻撃を行うか否かを決定してゲームを行うことができる。
【0085】
ここで、水オブジェクト105は敵キャラクタ200に攻撃を加える場合に限らず、仮想空間に配置された他のオブジェクトを除去する場合にも用いることができる。
【0086】
図14は、水オブジェクト105を用いて仮想空間に配置された他のオブジェクトを除去する様子のゲーム画像の一例を示す図である。
図15は、水オブジェクト105が他のオブジェクトに当たった場合に当該他のオブジェクトが除去されるときのゲーム画像の一例を示す図である。
【0087】
図14に示されるように、仮想空間には、例えばヘドロオブジェクト301が配置される。ヘドロオブジェクト301は、粘性の高い泥を模したオブジェクトであり、プレイヤキャラクタ100の移動を妨げる障害オブジェクトである。プレイヤキャラクタ100がヘドロオブジェクト301の配置領域に入った場合、プレイヤキャラクタ100の移動速度が遅くなる。ヘドロオブジェクト301は、水の属性に弱いオブジェクトであり、
図15に示されるように、仮想空間に射出された水オブジェクト105がヘドロオブジェクト301に当たった場合、ヘドロオブジェクト301は破壊されて除去される。
【0088】
また、ヘドロオブジェクト301は、水オブジェクト105に限らず、プレイヤキャラクタ100が所有する、水の属性を有する他のアイテムを用いても除去され得る。例えば、プレイヤによって水の属性を有する他のアイテムが選択され、プレイヤキャラクタ100が当該アイテムを仮想空間に射出し、射出した他のアイテムがヘドロオブジェクト301に当たった場合、当該ヘドロオブジェクト301は除去される。
【0089】
水オブジェクト105が射出された場合において当該水オブジェクト105がヘドロオブジェクト301に当たった場合でも、水オブジェクト105は予め定められた飛距離だけ進む。このため、水オブジェクト105を用いた場合には、水オブジェクト105の射出方向にある複数のヘドロオブジェクト301を除去することができる。これに対して、水の属性を有する他のアイテムを用いた場合は、他のアイテムがヘドロオブジェクト301に当たると、ヘドロオブジェクト301が除去されるとともに、当該他のアイテムも消える。このため、他のアイテムを用いた場合は、複数のヘドロオブジェクト301を除去することはできない。なお、他の実施形態では、水オブジェクト105がヘドロオブジェクト301に当たった場合に、ヘドロオブジェクト301が除去されるとともに、その時点で水オブジェクト105が消えてもよい。
【0090】
また、図示は省略するが、仮想空間にはプレイヤキャラクタ100にとって障害となる火オブジェクトがあり、プレイヤキャラクタ100が火オブジェクトに当たるとダメージを受ける。プレイヤキャラクタ100は、水オブジェクト105を火オブジェクトに当てることで火オブジェクトを消すことができる。火オブジェクトについても、プレイヤキャラクタ100が有する他のアイテム(水の属性を有するアイテム)を用いて消すことができる。また、仮想空間には水オブジェクト105でしか消せない(破壊できない)オブジェクトがあってもよい。
【0091】
剣オブジェクトや槍オブジェクト、或いは斧オブジェクト等は、基本的に敵キャラクタ200と近接した状態で攻撃を行う場合に用いられる武器オブジェクトである。ここでは、このような基本的に敵キャラクタ200と近接した状態で攻撃を行う場合に用いられる武器オブジェクトを、「近接用武器オブジェクト」ということがある。上述のように、プレイヤキャラクタ100が発動可能状態において、近接用武器オブジェクトを用いて攻撃アクションが行われた場合、水オブジェクト105が射出される。これにより、遠隔攻撃が可能となる。
【0092】
一方、武器オブジェクトには、近接用武器オブジェクトの他に、仮想空間に射出することでプレイヤキャラクタ100から離れた敵キャラクタ200に攻撃を行うための武器オブジェクト(例えば弓矢オブジェクト)がある。このような離れた敵キャラクタ200に攻撃を行うための弓矢オブジェクト等の武器オブジェクトを、「遠隔用武器オブジェクト」ということがある。遠隔用武器オブジェクトが使用される場合、画面には照準画像が表示され、プレイヤは、照準画像を用いて狙いを定める。遠隔用武器オブジェクトの射出のための操作入力が行われた場合、遠隔用武器オブジェクトは、照準画像によって示された仮想空間の位置に向かって射出される。射出された遠隔用武器オブジェクトが敵キャラクタ200に当たった場合、敵キャラクタ200にダメージが加えられるとともに、当該遠隔用武器オブジェクトが消える。
【0093】
プレイヤキャラクタ100が発動可能状態において、遠隔用武器オブジェクトを用いて攻撃アクションが行われた場合、水オブジェクト105は射出されず、遠隔用武器オブジェクトのみが仮想空間に射出される。この場合、プレイヤキャラクタ100の発動可能状態は維持される。
【0094】
なお、プレイヤキャラクタ100が通常の状態で近接用武器オブジェクトを装備しているときに、プレイヤによって所定の操作入力が行われた場合、プレイヤキャラクタ100は、近接用武器オブジェクトを仮想空間に投げる。例えば、プレイヤは、仮想空間における上下方向及び左右方向を指定して、プレイヤキャラクタ100に近接用武器オブジェクトを投げさせることができる。一方、プレイヤキャラクタ100が発動可能状態において、近接用武器オブジェクトを投げるための所定の操作入力が行われた場合、水オブジェクト105が指定された方向に射出される。この場合、近接用武器オブジェクトは仮想空間に投げられない。
【0095】
このように、プレイヤキャラクタ100が発動可能状態において、近接用武器オブジェクトを装備しているときには、水オブジェクト105が射出され、遠隔用武器オブジェクトを装備しているときには、水オブジェクト105は射出されない。これにより、遠隔用武器オブジェクトの使用によってプレイヤが有利になり過ぎないようにすることができる。例えば、遠隔用武器オブジェクトが射出されるとともに水オブジェクト105も射出される場合、プレイヤは、敵キャラクタ200に狙いを定めて、遠隔用武器オブジェクトを用いた攻撃と水オブジェクト105を用いた攻撃の両方を遠隔から行うことができる。そうすると、プレイヤキャラクタ100が敵キャラクタ200からの攻撃を受けるリスクが低いにもかかわらず、プレイヤキャラクタ100は強力な攻撃を行うことができ、プレイヤにとって有利になり過ぎる可能性がある。このため、本実施形態では、武器オブジェクトと水オブジェクト105とが同時に仮想空間に射出されないようにする。なお、別の実施形態では、武器オブジェクトと水オブジェクト105とが同時に仮想空間に射出可能なように構成されてもよい。例えば、プレイヤキャラクタ100が発動可能状態において、遠隔用武器オブジェクトを用いた攻撃アクションが行われた場合、遠隔用武器オブジェクトが指示された仮想空間の位置に向かって射出されるとともに、水オブジェクト105も射出されてもよい。
【0096】
上述のように、プレイヤキャラクタ100が第1のNPC110に近づいて、例えばAボタンが押下された場合、プレイヤキャラクタ100は、水オブジェクト105をまとった状態(第1のNPC110に関連付けられた第1の効果を発動可能な状態)になる。この状態で、近接用武器オブジェクトが選択されて、当該近接用武器オブジェクトを用いた攻撃アクションが行われた場合、攻撃アクションとともに水オブジェクト105が射出される(第1の効果が発動する)。また、プレイヤキャラクタ100が水オブジェクト105をまとった状態では、敵キャラクタ200からの攻撃が無効化(又は軽減)され、プレイヤキャラクタ100はダメージを受けない(又はダメージを軽減される)。
【0097】
プレイヤキャラクタ100が第2のNPC111に近づいて、例えばAボタンが押下された場合は、第2のNPC111に関連付けられた第2の効果が生じる。「第2の効果が生じる」とは、上記第1の効果とは異なる効果が生じることであり、例えば、プレイヤキャラクタ100が所定の攻撃を発することが可能な状態になることであってもよいし、所定の攻撃を行うことが可能な領域が設定されることであってもよいし、所定の領域が拡大することであってもよいし、特定の状況からプレイヤキャラクタ100が保護される状態になることであってもよい。
【0098】
以上のように、本実施形態のゲームでは、プレイヤキャラクタ100が第1のNPC110の近くにいるときに、例えばAボタンが押下された場合、プレイヤキャラクタ100は、第1のNPC110に関連付けられた第1の効果を発動可能な状態になる。そして、当該発動可能状態において攻撃アクションのための操作入力が行われた場合、第1の効果を有する攻撃アクションが行われる。これにより、プレイヤは第1のNPC110の属性を利用してゲームを進めることができる。プレイヤキャラクタ100が発動可能状態であるときに、攻撃アクションのための操作入力に応じて第1の効果が発動するため、プレイヤは、所望のタイミングや位置で第1の効果を発動させることができる。例えば、プレイヤキャラクタ100が発動可能状態であるときに、所望の位置までプレイヤキャラクタ100を移動させ、射出方向を調整して、水オブジェクト105を射出させることができる。また、プレイヤは、プレイヤキャラクタ100を発動可能状態に遷移させた後、装備する武器オブジェクトを変更することができる。武器オブジェクトの種類に応じて水オブジェクトの大きさ(幅)、飛距離、移動速度、攻撃力等が異なるため、プレイヤは、敵キャラクタ200の状況に応じて水オブジェクト105を用いた攻撃の範囲(幅)や距離を選択して、水オブジェクト105を射出させることができる。
【0099】
また、プレイヤキャラクタ100が第1のNPC110の近くにいるときに誤ってAボタンが押下された場合でも、プレイヤキャラクタ100を発動可能状態に遷移させることで、誤って水オブジェクト105が射出されることを抑制することができる。また、プレイヤは、プレイヤキャラクタ100を発動可能状態にするために、プレイヤキャラクタ100を第1のNPC110の近傍に移動させてAボタンを押下するため、誤ってプレイヤキャラクタ100を発動可能状態に遷移させることを抑制することができる。
【0100】
また、プレイヤキャラクタ100が発動可能状態であるときに、敵キャラクタ200からの攻撃を受けた場合は、プレイヤキャラクタ100が発動不可状態に遷移するが、敵キャラクタ200からの攻撃を受けても当該攻撃は無効化(又は軽減)される。このため、プレイヤキャラクタ100が発動不可状態に遷移してもプレイヤにとって利点があり、プレイヤキャラクタ100を第1のNPC110に近づけて発動可能状態にさせることをプレイヤに促進することができる。
【0101】
また、プレイヤキャラクタ100が発動可能状態であるときに、敵キャラクタ200からの攻撃を受けた場合、又は、水オブジェクト105を射出させた場合、プレイヤキャラクタ100は発動可能状態から発動不可状態に遷移する。この場合、所定の制限期間が経過するまで、プレイヤキャラクタ100は、再び発動可能状態に遷移しない。これにより、プレイヤキャラクタ100に短時間で連続して水オブジェクト105を用いた攻撃を行わせたり、連続してプレイヤキャラクタ100が水オブジェクト105によって防御された状態になることを防止することができ、プレイヤが有利になり過ぎないようにすることができる。
【0102】
(ゲーム処理に用いられるデータの説明)
次に、ゲーム処理の詳細について説明する。まず、ゲーム処理に用いられるデータについて説明する。
図16は、ゲーム処理の実行中に本体装置2のメモリに記憶されるデータの一例を示す図である。
【0103】
図16に示されるように、本体装置2のメモリ(DRAM85、フラッシュメモリ84、又は外部記憶媒体)には、ゲームプログラムと、操作データと、プレイヤキャラクタデータと、NPCデータと、敵キャラクタデータと、オブジェクトデータと、第1状態データと、第2状態データとが記憶される。これらの他にも、メモリには、様々なデータが記憶される。
【0104】
ゲームプログラムは、後述するゲーム処理を実行するためのプログラムである。ゲームプログラムは、スロット23に装着される外部記憶媒体又はフラッシュメモリ84に予め記憶されており、ゲームの実行時にDRAM85に読み込まれる。なお、ゲームプログラムは、ネットワーク(例えばインターネット)を介して他の装置から取得されてもよい。
【0105】
操作データは、左コントローラ3及び右コントローラ4から取得された操作に関するデータである。操作データには、例えば、左右のアナログスティックに対する操作に応じたデータ、各ボタンの操作に応じたデータが含まれる。例えば、操作データは、左コントローラ3及び右コントローラ4から所定の時間間隔(例えば、1/200秒間隔)で本体装置2に送信され、メモリに記憶される。
【0106】
プレイヤキャラクタデータは、プレイヤキャラクタ100に関するデータであり、プレイヤキャラクタ100の仮想空間における位置、向き、移動方向、移動速度等に関するデータを含む。また、プレイヤキャラクタデータは、プレイヤキャラクタ100のライフ値を含む。また、プレイヤキャラクタデータは、プレイヤキャラクタ100の形状等外観に関するデータを含む。また、プレイヤキャラクタデータは、プレイヤキャラクタ100が所有しているアイテム(武器オブジェクト、防具オブジェクト、その他ゲームに用いられるアイテム等)を表す所有アイテムデータを含む。また、プレイヤキャラクタデータは、プレイヤキャラクタ100が装備している武器オブジェクトを表す装備データを含む。
【0107】
NPCデータは、上記第1のNPC110に関するデータと、上記第2のNPC111に関するデータとを含む。第1のNPC110に関するデータは、第1のNPC110の仮想空間における位置、向き、移動方向、移動速度等に関するデータを含む。また、第1のNPC110に関するデータは、第1のNPC110の形状等の外観を表すデータと、属性データとを含む。また、第2のNPC111に関するデータは、第1のNPC110に関するデータと同種のデータを含む。さらに、仮想空間には、第1のNPC110及び第2のNPC111に加えて、第3のNPC、第4のNPCが配置されてもよい。この場合、NPCデータは、第3のNPCや第4のNPCに関するデータを含む。第3のNPC及び第4のNPCには、それぞれ特有の効果が関連付けられる。
【0108】
敵キャラクタデータは、仮想空間に配置される複数の敵キャラクタ200に関するデータである。敵キャラクタデータは、各敵キャラクタ200の仮想空間における位置、向き、移動方向、移動速度等に関するデータを含む。また、敵キャラクタデータは、各敵キャラクタ200のライフ値を含む。また、敵キャラクタデータは、各敵キャラクタ200の形状等の外観に関するデータや属性に関するデータを含む。
【0109】
オブジェクトデータは、仮想空間に配置されたオブジェクト(例えば、ヘドロオブジェクト301や火オブジェクト等のプレイヤキャラクタ100にとって障害となるオブジェクト等)に関するデータである。オブジェクトデータは、各オブジェクトの仮想空間における位置に関するデータを含む。また、オブジェクトデータは、各オブジェクトの形状等の外観に関するデータと、属性に関するデータとを含む。
【0110】
第1状態データは、プレイヤキャラクタ100が上記発動可能状態か否かを表すデータである。
【0111】
第2状態データは、第2のNPC111に関連付けられた第2の効果が生じているか否かを表すデータである。
【0112】
(本体装置2におけるゲーム処理の詳細)
次に、本体装置2において行われるゲーム処理の詳細について説明する。
図17は、本体装置2のプロセッサ81によって実行されるゲーム処理の一例を示すフローチャートである。
【0113】
図17に示されるように、プロセッサ81は、まず、初期処理を実行する(ステップS100)。具体的には、プロセッサ81は、3次元の仮想空間を設定し、仮想空間にプレイヤキャラクタ100、敵キャラクタ200、第1のNPC110、第2のNPC111、仮想カメラ、その他のオブジェクトを配置する。プロセッサ81は初期処理を実行した後、次のステップS101~ステップS109の処理を所定のフレーム時間間隔(例えば、1/60秒間隔)で繰り返し実行する。
【0114】
ステップS101において、プロセッサ81は、コントローラからの操作データを取得する。操作データは、左コントローラ3の各ボタン、アナログスティック、右コントローラ4の各ボタン、アナログスティック等の操作状態に関するデータを含む。ステップS101では、プロセッサ81は、各コントローラから送信されてメモリに記憶された操作データを取得する。
【0115】
次に、プロセッサ81は、プレイヤキャラクタの制御処理を行う(ステップS102)。ここでは、操作データに基づいてプレイヤキャラクタ100を仮想空間内で移動させる処理が行われる。例えば、プロセッサ81は、左アナログスティック32の入力方向に応じた仮想空間の方向に、1フレーム分の移動量でプレイヤキャラクタ100を移動させる。また、後述するプレイヤキャラクタの攻撃アクション処理において攻撃アクションが開始されてから複数フレームの間、プロセッサ81は、ステップS102において、当該攻撃アクションのアニメーションを1フレーム分進行させる。ステップS102の処理が所定のフレーム時間間隔で繰り返し行われることにより、プレイヤキャラクタ100が仮想空間内を移動するアニメーションや、プレイヤキャラクタが攻撃アクションを行うアニメーションが表示される。
【0116】
次に、プロセッサ81は、NPC制御処理を行う(ステップS103)。ここでは、プロセッサ81は、所定のアルゴリズムに従って第1のNPC110及び第2のNPC111を仮想空間内で移動させたり、仮想空間内で所定のアクションを行わせたりする。例えば、プロセッサ81は、第1のNPC110がプレイヤキャラクタ100に追従するように、第1のNPC110の位置を自動で制御する。プロセッサ81は、プレイヤキャラクタ100が停止した場合、第1のNPC110を停止させる。また、プロセッサ81は、第1のNPC110にアクションを行わせる。例えば、プロセッサ81は、アクションとして、第1のNPC110が敵キャラクタ200と格闘するように制御する。プロセッサ81は、同様に、第2のNPC111の移動及びアクションを制御する。これらの制御に基づいて、プロセッサ81は、1フレーム分の移動量でNPCを移動させたり、アクションに基づいたNPCのアニメーションを1フレーム分進行させる。
【0117】
次に、プロセッサ81は、敵キャラクタ制御処理を行う(ステップS104)。具体的には、プロセッサ81は、所定のアルゴリズムに従って、敵キャラクタ200を仮想空間内で移動させたり、仮想空間内に出現させたりする。また、プロセッサ81は、所定のアルゴリズムに従って、敵キャラクタ200にプレイヤキャラクタ100への攻撃アクションを行わせる。
【0118】
次に、プロセッサ81は、状態遷移処理を行う(ステップS105)。ここでは、プロセッサ81は、操作データに基づいて、プレイヤキャラクタ100を上記発動可能状態に遷移させる。ステップS105の状態遷移処理の詳細については後述する。
【0119】
次に、プロセッサ81は、プレイヤキャラクタの攻撃アクション処理を行う(ステップS106)。ここでは、プロセッサ81は、操作データに基づいて、プレイヤキャラクタ100に武器オブジェクトを装備させたり、武器オブジェクトを用いて攻撃アクションを行わせたりする。また、プレイヤキャラクタ100が発動可能状態である場合、プロセッサ81は、操作データに基づいて、プレイヤキャラクタ100に第1の効果を有する攻撃アクションを行わせる。プレイヤキャラクタの攻撃アクション処理の詳細については後述する。
【0120】
次に、プロセッサ81は、プレイヤキャラクタのダメージ処理を行う(ステップS107)。ここでは、プレイヤキャラクタ100に対して攻撃が加えられた場合に、プレイヤキャラクタ100にダメージが加えられる。プレイヤキャラクタのダメージ処理の詳細については後述する。
【0121】
次に、プロセッサ81は、出力処理を行う(ステップS108)。具体的には、プロセッサ81は上記ステップS102~ステップS107の処理の結果に応じた仮想空間の画像を仮想カメラを用いて生成し、当該生成した画像を表示装置に出力する。また、プロセッサ81は、画像の生成及び出力とともに音声を出力する。これにより、表示装置においてゲーム画像が表示されるとともに、スピーカからゲーム処理に応じた音声が出力される。
【0122】
次に、プロセッサ81は、ゲーム処理を終了するか否かを判定する(ステップS109)。例えば、プレイヤによってゲームの終了が指示された場合、プロセッサ81は、ゲーム処理を終了すると判定し(ステップS109:YES)、
図17に示すゲーム処理を終了する。プロセッサ81は、ゲーム処理を終了しないと判定した場合(ステップS109:NO)、ステップS101の処理を再び実行する。以上で、
図17に示すゲーム処理の説明を終了する。
【0123】
(状態遷移処理)
次に、上記ステップS105の状態遷移処理の詳細について説明する。
図18は、ステップS105の状態遷移処理の一例を示すフローチャートである。
【0124】
ステップS120において、プロセッサ81は、現在、プレイヤキャラクタ100が発動可能状態か否かを判定する。具体的には、プロセッサ81は、第1状態データを参照して、プレイヤキャラクタ100が発動可能状態か否かを判定する。
【0125】
プレイヤキャラクタ100が発動可能状態でない場合(ステップS120:NO)、プロセッサ81は、プレイヤキャラクタ100と第1のNPC110とが所定の位置関係か否かを判定する(ステップS121)。例えば、プロセッサ81は、プレイヤキャラクタ100と第1のNPC110との距離が所定の閾値未満であるか否かを判定する。
【0126】
プレイヤキャラクタ100と第1のNPC110とが所定の位置関係であると判定した場合(ステップS121:YES)、プロセッサ81は、所定の制限期間内か否かを判定する(ステップS122)。例えば、所定の制限期間は、水オブジェクト105が射出された場合、水オブジェクト105によって敵キャラクタ200からの攻撃が無効化又は軽減された場合、又は、プレイヤキャラクタ100が発動可能状態になった場合に、設定される。所定の制限期間は、水オブジェクト105が射出されてから一定時間が経過するまでの期間であってもよいし、水オブジェクト105によって敵キャラクタ200からの攻撃が無効化又は軽減されてから一定時間が経過するまでの期間であってもよいし、プレイヤキャラクタ100が発動可能状態に遷移してから一定期間が経過するまでの期間であってもよい。
【0127】
所定の制限期間内であると判定した場合(ステップS122:YES)、プロセッサ81は、
図18に示す状態遷移処理を終了する。
【0128】
所定の制限期間内ではないと判定した場合(ステップS122:NO)、プロセッサ81は、操作データに基づいて、Aボタンが押下されたか否かを判定する(ステップS123)。Aボタンが押下されたと判定した場合(ステップS123:YES)、プロセッサ81は、プレイヤキャラクタ100を発動可能状態に遷移させる(ステップS124)。具体的には、プロセッサ81は、第1状態データに、プレイヤキャラクタ100が発動可能状態であることを示す値を格納する。また、プロセッサ81は、プレイヤキャラクタ100の周囲に水オブジェクト105を配置する。これにより、プレイヤキャラクタ100は、水オブジェクト105をまとった状態となる。
【0129】
Aボタンが押下されなかったと判定した場合(ステップS123:NO)、プロセッサ81は、
図18に示す状態遷移処理を終了する。
【0130】
一方、プレイヤキャラクタ100と第1のNPC110とが所定の位置関係でないと判定した場合(ステップS121:NO)、プロセッサ81は、プレイヤキャラクタ100と第2のNPC111とが所定の位置関係か否かを判定する(ステップS125)。例えば、プロセッサ81は、プレイヤキャラクタ100と第2のNPC111との距離が所定の閾値未満であるか否かを判定する。
【0131】
プレイヤキャラクタ100と第2のNPC111とが所定の位置関係であると判定した場合(ステップS125:YES)、プロセッサ81は、所定の制限期間内か否かを判定する(ステップS126)。このステップS126の所定の制限期間は、第2のNPC111に関連付けられた第2の効果が発動されたことに基づいて設定されてもよく、所定の制限期間は、第2の効果が発動されてから一定時間が経過するまでの期間であってもよい。
【0132】
なお、ステップS126の所定の制限期間は、ステップS122の所定の制限期間と共通であってもよい。例えば、プレイヤキャラクタ100が第1のNPC110に近づいて発動可能状態に遷移した後、水オブジェクト105を射出した場合に、プレイヤキャラクタ100は発動不可状態に遷移する。この場合、共通の制限期間が設けられ、当該共通の制限期間が経過するまでは、プレイヤキャラクタ100が第1のNPC110に近づいても発動可能状態に遷移しない。また、当該共通の制限期間が経過するまでは、プレイヤキャラクタ100が第2のNPC111に近づいても第2のNPC111に関連する第2の効果を生じさせることができないように構成されてもよい。すなわち、一方のNPCに関連する効果が発動した場合は、共通の制限期間が設定され、当該共通の制限期間が経過するまでは、一方のNPCに関連する効果の発動が制限されるのみならず、他方のNPCに関連する効果の発動も制限されてもよい。
【0133】
あるいは、ステップS126の所定の制限期間と、ステップS122の所定の制限期間とは、それぞれ別に設定されてもよい。例えば、プレイヤキャラクタ100が第1のNPC110に近づいて発動可能状態に遷移した後、水オブジェクト105を射出した場合に、プレイヤキャラクタ100が発動不可状態になる。この場合、第1のNPC110に関連する第1の制限期間が設けられ、当該第1の制限期間が経過するまでは、プレイヤキャラクタ100が第1のNPC110に近づいても発動可能状態にならない。一方で、第1の制限期間が経過していなくても、プレイヤキャラクタ100が第2のNPC111に近づくことで、第2のNPC111に関連する第2の効果を生じさせることができてもよい。逆に、プレイヤキャラクタ100が第2のNPC111に近づいて第2のNPC111に関連する第2の効果を生じさせた場合、第2のNPC111に関連する第2の制限期間が設けられ、当該第2の制限期間が経過するまでは、プレイヤキャラクタ100が第2のNPC111に近づいても第2のNPC111に関連する第2の効果を生じさせることはできない。この場合、第2の制限期間が経過していなくても、プレイヤキャラクタ100が第1のNPC110に近づいて発動可能状態になることができてもよい。
【0134】
所定の制限期間内であると判定した場合(ステップS126:YES)、プロセッサ81は、
図18に示す状態遷移処理を終了する。
【0135】
所定の制限期間内ではないと判定した場合(ステップS126:NO)、プロセッサ81は、操作データに基づいて、Aボタンが押下されたか否かを判定する(ステップS127)。Aボタンが押下されたと判定した場合(ステップS127:YES)、プロセッサ81は、第2のNPC111に関連付けられた第2の効果を発動させる(ステップS128)。第2のNPC111に関連付けられた第2の効果は、上記第1の効果とは異なる効果である。第2のNPC111に関連付けられた第2の効果は、例えば、プレイヤキャラクタ100が所定の攻撃を行った場合に、特別な攻撃が加えられる効果であってもよいし、所定の領域が拡大することであってもよい。
【0136】
ステップS124又はステップS128の処理を実行した場合、プロセッサ81は、
図18に示す状態遷移処理を終了する。
【0137】
一方、プレイヤキャラクタ100が発動可能状態であると判定した場合(ステップS120:YES)、プロセッサ81は、プレイヤキャラクタ100が発動可能状態になってから所定の有効期間(例えば10秒)が経過したか否かを判定する(ステップS129)。
【0138】
プレイヤキャラクタ100が発動可能状態になってから所定の有効期間が経過したと判定した場合(ステップS129:YES)、プロセッサ81は、プレイヤキャラクタ100を発動不可状態に遷移させる(ステップS130)。すなわち、プレイヤキャラクタ100は、第1の効果を有する攻撃アクションを発動可能でない通常の状態に遷移される。具体的には、プロセッサ81は、第1状態データに、プレイヤキャラクタ100が通常の状態であることを示す値を格納する。また、プロセッサ81は、プレイヤキャラクタ100の周囲に配置された水オブジェクト105を消去する。これにより、プレイヤキャラクタ100は通常の状態に戻る。
【0139】
プロセッサ81は、ステップS130の処理を行った場合、又は、ステップS129でNOと判定した場合、
図18に示す状態遷移処理を終了する。
【0140】
(プレイヤキャラクタの攻撃アクション処理)
次に、上記ステップS106におけるプレイヤキャラクタの攻撃アクション処理の詳細について説明する。
図19は、ステップS106におけるプレイヤキャラクタの攻撃アクション処理の一例を示すフローチャートである。
【0141】
ステップS140において、プロセッサ81は、まず、武器選択処理を行う。ここでは、プロセッサ81は、操作データに基づいてプレイヤによって武器の選択操作が行われたか否かを判定する。プレイヤによって武器の選択操作が行われたと判定した場合、プロセッサ81は、操作データに基づいてプレイヤキャラクタ100が装備する武器オブジェクトを選択し、当該選択した武器オブジェクトを示すデータを装備データとして格納する。これにより、プレイヤキャラクタ100は、所有する複数の武器オブジェクトのうちの何れかを装備する。
【0142】
次に、プロセッサ81は、プレイヤキャラクタ100が近接用武器オブジェクトを装備中か否かを判定する(ステップS141)。具体的には、プロセッサ81は、装備データを参照して、装備している武器オブジェクトが近接用武器オブジェクトであるか否かを判定する。
【0143】
プレイヤキャラクタ100が近接用武器オブジェクトを装備中であると判定した場合(ステップS141:YES)、プロセッサ81は、操作データに基づいて、攻撃操作が行われたか否かを判定する(ステップS142)。例えば、プロセッサ81は、操作データに基づいて、Yボタンが押下されたか否かを判定する。
【0144】
攻撃操作が行われたと判定した場合(ステップS142:YES)、プロセッサ81は、プレイヤキャラクタ100に装備中の武器オブジェクトを用いた攻撃アクションを開始させる(ステップS143)。これにより、例えばプレイヤキャラクタ100が剣オブジェクト101を装備している場合、プレイヤキャラクタ100が剣オブジェクト101を振る攻撃アクションが開始される。攻撃アクション開始から複数フレームの間、当該攻撃アクションに関するプレイヤキャラクタ100のアニメーションが行われる。
【0145】
ステップS143の処理を行った場合、プロセッサ81は、プレイヤキャラクタ100が発動可能状態か否かを判定する(ステップS144)。具体的には、プロセッサ81は、第1状態データを参照して、プレイヤキャラクタ100が発動可能状態(すなわち、プレイヤキャラクタ100が水オブジェクト105をまとった状態)か否かを判定する。
【0146】
プレイヤキャラクタ100が発動可能状態であると判定した場合(ステップS144:YES)、プロセッサ81は、第1の効果を発動させる(ステップS145)。具体的には、プロセッサ81は、プレイヤキャラクタ100の前方向に水オブジェクト105を射出する。これにより、水オブジェクト105が仮想空間内を移動開始する。プロセッサ81は、水オブジェクト105の形状、大きさ(幅)、移動速度、飛距離を、装備中の武器オブジェクトの種類に応じて設定する。
【0147】
次に、プロセッサ81は、プレイヤキャラクタ100を発動不可状態に遷移させる(ステップS146)。具体的には、プロセッサ81は、第1状態データに、プレイヤキャラクタ100が第1の効果を発動不可能であることを示す値を格納する。これにより、プレイヤキャラクタ100は水オブジェクト105をまとっていない通常の状態に戻る。
【0148】
一方、プレイヤキャラクタ100が近接用武器オブジェクトを装備中でないと判定した場合(ステップS141:NO)、プロセッサ81は、操作データに基づいて、装備中の武器オブジェクトに応じた攻撃アクションをプレイヤキャラクタ100に開始させる(ステップS147)。ここでは、プロセッサ81は、操作データに基づいて、攻撃アクションのための操作入力が行われたか否かを判定するとともに、装備中の武器オブジェクトを用いた攻撃アクションをプレイヤキャラクタ100に開始させる。攻撃アクション開始から複数フレームの間、当該攻撃アクションに関するプレイヤキャラクタ100のアニメーションが行われる。例えば、プロセッサ81は、プレイヤキャラクタ100が弓矢オブジェクトを装備中である場合、操作データに基づいて、ZRボタンが押下されたか否かを判定する。プレイヤキャラクタ100が弓矢オブジェクトを装備中であり、かつ、ZRボタンが押下された場合は、プロセッサ81は、プレイヤキャラクタ100に弓矢オブジェクトを飛ばすアクションを開始させ、弓矢オブジェクトを仮想空間に射出する。
【0149】
ステップS142でNOと判定した場合、ステップS144でNOと判定した場合、ステップS146の処理を実行した場合、又は、ステップS147の処理を実行した場合、プロセッサ81は、水オブジェクト105が仮想空間を移動中か否かを判定する(ステップS148)。ここでは、ステップS145において水オブジェクト105が射出され、当該水オブジェクト105が仮想空間を移動中か否かが判定される。
【0150】
水オブジェクト105が仮想空間を移動中であると判定した場合(ステップS148:YES)、プロセッサ81は、水オブジェクト105の移動速度に基づいて、水オブジェクト105を1フレーム分の移動量で移動させるとともに、移動後の位置に基づいて、水オブジェクト105の当たり判定処理を行う(ステップS149)。具体的には、プロセッサ81は、水オブジェクト105が仮想空間内のオブジェクト(敵キャラクタ200、ヘドロオブジェクト301、火オブジェクト、その他のオブジェクト)に当たったか否かを判定する。例えば、水オブジェクト105が敵キャラクタ200に当たった場合、プロセッサ81は、敵キャラクタ200に対して、水オブジェクト105の射出に用いられた武器オブジェクトに設定された攻撃力に応じたダメージを加える。これにより、敵キャラクタ200のライフ値が減少され、敵キャラクタ200のライフ値がゼロになった場合、敵キャラクタ200が倒れる。また、水オブジェクト105がヘドロオブジェクト301に当たった場合、プロセッサ81は、ヘドロオブジェクト301を除去する。また、水オブジェクト105が火オブジェクトに当たった場合、プロセッサ81は、火オブジェクトを除去する。
【0151】
ステップS148でNOと判定した場合、又は、ステップS149を実行した場合、プロセッサ81は、プレイヤキャラクタ100が攻撃アクションを実行中か否かを判定する(ステップS150)。ここでは、プレイヤキャラクタ100がステップS143又はステップS147において攻撃アクションを開始し、当該攻撃アクションの実行中か否かが判定される。例えば、プレイヤキャラクタ100が剣オブジェクト101を振っている場合、プロセッサ81は、ステップS150でYESと判定する。また、プレイヤキャラクタ100が剣オブジェクト102を振っている場合、ステップS150でYESと判定される。また、プレイヤキャラクタ100が槍オブジェクトを用いて攻撃アクションを実行している場合、プロセッサ81は、ステップS150でYESと判定する。また、ステップS147においてプレイヤキャラクタ100が弓矢オブジェクトを射出し、当該弓矢オブジェクトが仮想空間を移動中である場合、プロセッサ81はステップS150でYESと判定する。
【0152】
プレイヤキャラクタ100が攻撃アクションの実行中と判定した場合(ステップS150:YES)、プロセッサ81は、攻撃アクションの当たり判定処理を行う(ステップS151)。ここでは、プレイヤキャラクタ100の攻撃アクションが、敵キャラクタ200や仮想空間内の他のオブジェクトに当たったか否かの判定が行われ、当たった場合の処理が行われる。例えば、プレイヤキャラクタ100が剣オブジェクト101を振る攻撃アクションを実行している場合、プロセッサ81は、剣オブジェクト101が敵キャラクタ200に当たったか否かを判定する。剣オブジェクト101が敵キャラクタ200に当たった場合は、プロセッサ81は、敵キャラクタ200に剣オブジェクト101の攻撃力に応じたダメージを加える。これにより、敵キャラクタ200のライフ値が減少され、敵キャラクタ200のライフ値がゼロになった場合、敵キャラクタ200が倒れる。また、プレイヤキャラクタ100が剣オブジェクト102を振る攻撃アクションを実行している場合、プロセッサ81は、剣オブジェクト102が敵キャラクタ200に当たったか否かを判定する。剣オブジェクト102が敵キャラクタ200に当たった場合は、プロセッサ81は、敵キャラクタ200に剣オブジェクト102の攻撃力に応じたダメージを加える。また、プロセッサ81は、弓矢オブジェクトが仮想空間を移動している場合、弓矢オブジェクトの移動速度に基づいて、弓矢オブジェクトを1フレーム分の移動量で移動させるとともに、移動後の位置に基づいて、弓矢オブジェクトが敵キャラクタ200に当たったか否かを判定する。弓矢オブジェクトが敵キャラクタ200に当たった場合は、プロセッサ81は、敵キャラクタ200に弓矢オブジェクトの攻撃力に応じたダメージを加える。なお、例えば、プレイヤキャラクタ100が剣オブジェクト101を振る攻撃アクションを実行している場合において、剣オブジェクト101が仮想空間内の木オブジェクトに当たった場合、木オブジェクトが破壊されたり、切られたりしてもよい。
【0153】
ステップS150でNOと判定した場合、又は、ステップS151を実行した場合、プロセッサ81は、
図19に示すプレイヤキャラクタの攻撃アクション処理を終了する。
【0154】
(プレイヤキャラクタのダメージ処理)
次に、上記ステップS107におけるプレイヤキャラクタのダメージ処理の詳細について説明する。
図20は、ステップS107におけるプレイヤキャラクタのダメージ処理の一例を示すフローチャートである。
【0155】
ステップS160において、プロセッサ81は、プレイヤキャラクタ100が敵キャラクタ200からの攻撃を受けたか否かを判定する。ここでは、プレイヤキャラクタ100と敵キャラクタ200との位置関係や、敵キャラクタ200の攻撃アクションに基づいて、敵キャラクタ200の攻撃アクションがプレイヤキャラクタ100に当たったか否かが判定される。
【0156】
プレイヤキャラクタ100が敵キャラクタ200からの攻撃を受けた判定した場合(ステップS160:YES)、プロセッサ81は、プレイヤキャラクタ100が発動可能状態か否かを判定する(ステップS161)。
【0157】
プレイヤキャラクタ100が発動可能状態であると判定した場合(ステップS161:YES)、プロセッサ81は、敵キャラクタ200の攻撃を無効化又は軽減し(ステップS162)、プレイヤキャラクタ100を発動不可状態に遷移させる(ステップS163)。すなわち、敵キャラクタ200からの攻撃に対して、プレイヤキャラクタ100にダメージが加えられることなく(又はダメージが軽減され)、プレイヤキャラクタ100が通常の状態に遷移される。具体的には、プロセッサ81は、第1状態データに、プレイヤキャラクタ100が通常の状態であることを示す値を格納する。また、プロセッサ81は、水オブジェクト105を消去する。これにより、プレイヤキャラクタ100は水オブジェクト105をまとっていない通常の状態に戻る。
【0158】
プレイヤキャラクタ100が発動可能状態でないと判定した場合(ステップS161:NO)、プロセッサ81は、プレイヤキャラクタ100にダメージを加える(ステップS164)。ここでは、敵キャラクタ200の種類や攻撃アクションの種類に応じた量のダメージがプレイヤキャラクタ100に加えられてもよい。プレイヤキャラクタ100にダメージが加えられることにより、プレイヤキャラクタ100のライフ値が減少する。
【0159】
ステップS160でNOと判定した場合、ステップS163を実行した場合、又は、ステップS164を実行した場合、プロセッサ81は、プレイヤキャラクタ100の周辺が高温環境か否かを判定する(ステップS165)。
【0160】
周辺が高温環境であると判定した場合(ステップS165:YES)、プロセッサ81は、プレイヤキャラクタ100が所定の状態であるか否かを判定する(ステップS166)。ここでは、プレイヤキャラクタ100が濡れている状態か否かが判定される。プレイヤキャラクタ100が発動可能状態である場合、プロセッサ81は、ステップS166においてYESと判定する。また、例えばプレイヤキャラクタ100が水中にいる場合は、プロセッサ81は、ステップS166においてYESと判定する。
【0161】
プレイヤキャラクタ100が所定の状態であると判定した場合(ステップS166:YES)、プロセッサ81は、高温環境によるダメージを無効化又は軽減する(ステップS167)。すなわち、高温環境によってプレイヤキャラクタ100にダメージが加えられない(又はダメージが軽減される)。
【0162】
プレイヤキャラクタ100が所定の状態でないと判定した場合(ステップS166:NO)、プロセッサ81は、プレイヤキャラクタ100に高温環境によるダメージを加える(ステップS168)。例えば、プロセッサ81は、プレイヤキャラクタ100が高温環境にいる時間に応じて、プレイヤキャラクタ100のライフ値を減少させる。
【0163】
ステップS165でNOと判定した場合、ステップS167を実行した場合、又は、ステップS168を実行した場合、プロセッサ81は、
図20に示すプレイヤキャラクタのダメージ処理を終了する。
【0164】
(変形例)
以上、本実施形態について説明したが、上記実施形態は単なる一例であり、例えば以下のような変形が加えられてもよい。
【0165】
例えば、上記実施形態では、プレイヤキャラクタ100が発動可能状態において武器オブジェクトを用いた攻撃アクションを行うことで、当該攻撃アクションに加えて、水オブジェクト105が射出された。他の実施形態では、武器オブジェクトを用いた攻撃アクションに限らず、例えば、パンチやキック等、武器オブジェクトを用いない攻撃アクションをプレイヤキャラクタ100が行うことを前提として、プレイヤキャラクタ100が発動可能状態において攻撃アクションを行った場合、当該攻撃アクションとともに水オブジェクト105が射出されてもよい。
【0166】
また、上記実施形態では、プレイヤキャラクタ100が予め所有する複数の武器オブジェクトの中から何れかを装備し、装備している武器オブジェクトを用いて攻撃アクションを行った。他の実施形態では、プレイヤキャラクタ100は、複数の武器オブジェクトを予め所有しなくてもよく、例えば、仮想空間に落ちている複数の武器オブジェクトの中から何れかを取得し、当該取得した武器オブジェクトを用いて攻撃アクションを行ってもよい。この場合、取得した武器オブジェクトに応じて、射出される水オブジェクト105の形状、大きさ、移動速度、飛距離、攻撃力等が異なってもよい。
【0167】
また、プレイヤキャラクタ100に攻撃アクションを行わせることを前提として、プレイヤキャラクタ100が発動可能状態において攻撃アクションを行った場合に、攻撃アクションとともに水オブジェクト105が射出された(第1の効果が発動された)。他の実施形態では、プレイヤキャラクタ100に所定のアクション(例えば、ジャンプやダッシュ等)を行わせることを前提として、プレイヤキャラクタ100が発動可能状態において所定のアクションを行った場合に、所定のアクションとともに第1の効果が発動されてもよい。
【0168】
また、上記実施形態では、プレイヤキャラクタ100が発動可能状態において所定のアクションを行った場合に、所定のアクションが行われるとともに、水オブジェクト105が仮想空間に射出される効果が発動された。他の実施形態では、プレイヤキャラクタ100が発動可能状態において所定のアクションを行った場合に、所定のアクションとともに、他の任意の効果が発動されてもよい。例えば、水オブジェクト105以外の、第1のNPCに関連する任意のオブジェクトが仮想空間に射出されてもよい。また、オブジェクトが射出される効果に限らず、例えば、仮想空間内において所定の効果(例えばプレイヤキャラクタ100の攻撃力や防御力が増す効果、敵キャラクタ200の攻撃力や防御力が低くなる効果、敵キャラクタ200の動きが遅くなる効果等)が所定時間だけ発動してもよい。
【0169】
また、上記実施形態では、プレイヤキャラクタ100が発動可能状態に遷移した場合、上記所定の有効期間が経過するか、敵キャラクタ200からの攻撃を受けるか、水オブジェクト105を射出するかの何れかの条件が成立した場合に、プレイヤキャラクタ100が発動可能状態から発動不可状態に遷移した。他の実施形態では、これらの条件以外にもプレイヤキャラクタ100が発動可能状態から発動不可状態に遷移してもよい。例えば、プレイヤキャラクタ100が発動可能状態である場合において、仮想空間においてダメージを受ける環境(例えば、溶岩の近傍などの高温環境)にいる場合、プレイヤキャラクタ100は、発動可能状態に遷移してから所定の有効期間が経過する前に、発動不可状態に遷移してもよい。また、他の実施形態では、上記所定の有効期間は設けられなくてもよい。この場合、プレイヤキャラクタ100は、発動可能状態において敵キャラクタ200からの攻撃を受けるか、水オブジェクト105を射出するかの何れかの条件が成立した場合に、発動不可状態に遷移してもよい。
【0170】
また、上記実施形態では、プレイヤキャラクタ100が発動可能状態に遷移した場合、敵キャラクタ200からの攻撃を受けるか、水オブジェクト105を射出するかの何れかの条件が成立した場合に、プレイヤキャラクタ100を発動不可状態に遷移させ、所定の制限期間が経過するまで、プレイヤキャラクタ100を再び発動可能状態に遷移させないようにした。プレイヤキャラクタ100が発動可能状態に遷移した後、上記所定の有効期間が経過したことによってプレイヤキャラクタ100が発動不可状態になった場合も、このような制限期間が設けられてもよい。また、他の実施形態では、プレイヤキャラクタ100が発動可能状態から発動不可状態に遷移した場合、このような制限期間は設けられなくてもよい。
【0171】
また、上記実施形態では、プレイヤがプレイヤキャラクタ100を制御し、プロセッサ81によって自動で制御される敵キャラクタ200を倒しながら進行するゲームを想定した。他の実施形態では、例えば、プレイヤ同士が自身のプレイヤキャラクタを制御しながら、互いに格闘するゲームが行われてもよい。この場合、各プレイヤキャラクタは、上述した第1のNPC110に近づいて発動可能状態に遷移し、所定のアクションとともに第1の効果を発動することができてもよい。
【0172】
また、上記フローチャートで示した処理は単なる例示に過ぎず、処理の順番や内容等は適宜変更されてもよい。
【0173】
また、上記ゲームを行うハードウェアの構成は単なる一例であり、他の任意のハードウェアにおいて上記ゲーム処理が行われてもよい。例えば、パーソナルコンピュータ、タブレット端末、スマートフォン、インターネット上のサーバ等、任意の情報処理装置において上記ゲーム処理が実行されてもよい。また、上記ゲーム処理は、複数の装置を含む情報処理装置において実行されてもよい。
【0174】
また上記実施形態及びその変形例に係る構成は、互いに矛盾しない限り、任意に組み合わせることが可能である。また、上記は本発明の例示に過ぎず、上記以外にも種々の改良や変形が加えられてもよい。
【符号の説明】
【0175】
1 ゲームシステム
2 本体装置
3 左コントローラ
4 右コントローラ
32 左アナログスティック
53 Aボタン
56 Yボタン
81 プロセッサ
100 プレイヤキャラクタ
101、102 剣オブジェクト
105 水オブジェクト
110 第1のNPC
111 第2のNPC
200 敵キャラクタ
301 ヘドロオブジェクト