(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-28
(45)【発行日】2022-01-19
(54)【発明の名称】情報処理プログラム、情報処理装置、情報処理方法、および情報処理システム
(51)【国際特許分類】
A63F 13/55 20140101AFI20220112BHJP
A63F 13/45 20140101ALI20220112BHJP
A63F 13/52 20140101ALI20220112BHJP
A63F 13/577 20140101ALI20220112BHJP
【FI】
A63F13/55
A63F13/45
A63F13/52
A63F13/577
(21)【出願番号】P 2017103878
(22)【出願日】2017-05-25
【審査請求日】2020-04-20
(73)【特許権者】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】100115808
【氏名又は名称】加藤 真司
(74)【代理人】
【識別番号】100113549
【氏名又は名称】鈴木 守
(74)【代理人】
【識別番号】230121430
【氏名又は名称】安井 友章
(74)【代理人】
【識別番号】100130269
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】田中 航
(72)【発明者】
【氏名】吉田 陸斗
【審査官】鈴木 崇雅
(56)【参考文献】
【文献】特開2005-152081(JP,A)
【文献】特開平09-038338(JP,A)
【文献】特開2009-233208(JP,A)
【文献】マインドジャック,SQUARE ENIX,2011年01月31日,第11、21-23、29頁
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-98
A63F 9/24
(57)【特許請求の範囲】
【請求項1】
情報処理装置を、
プレイヤによる入力を受け付ける入力受付手段、
仮想空間内のオブジェクトのうち、前記入力受付手段にて受け付けた入力によって操作される被操作オブジェクトとするオブジェクトを第1オブジェクトと第2オブジェクトとの間で変更する被操作オブジェクト変更手段、および
前記第2オブジェクトが前記被操作オブジェクトとされていないときに、第1制御方法で前記第2オブジェクトを制御する第2オブジェクト制御手段として機能させ、
前記第2オブジェクト制御手段は、前記被操作オブジェクト変更手段によって被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更された
ことに応じて、所定の条件を満たすまでの間は、前記第1制御方法とは異なる第2制御方法で前記第2オブジェクトを制御する、
情報処理プログラム。
【請求項2】
前記情報処理装置を、さらに、前記第1オブジェクトが前記被操作オブジェクトとされているときは、前記第1オブジェクトを表示し、前記第2オブジェクトが前記被操作オブジェクトとされているときは、前記第1オブジェクトを非表示とする第1オブジェクト制御手段として機能させる、請求項1に記載の情報処理プログラム。
【請求項3】
前記情報処理装置を、さらに、前記被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更されたときに、前記第1オブジェクトを前記第2オブジェクトの近傍に配置する第1オブジェクト制御手段として機能させる、請求項1に記載の情報処理プログラム。
【請求項4】
前記第1制御方法は、前記第2オブジェクトを前記仮想空間内で移動させる制御であり、前記第2制御方法は、前記第2オブジェクトを停止させる制御である、請求項1から3のいずれかに記載の情報処理プログラム。
【請求項5】
前記第1制御方法は、前記第2オブジェクトを前記第1オブジェクトに近づくように移動させる制御である、請求項4に記載の情報処理プログラム。
【請求項6】
前記第1制御方法は、前記第2オブジェクトを前記第1オブジェクトから遠ざかるように移動させる制御である、請求項4に記載の情報処理プログラム。
【請求項7】
前記第1制御方法は、前記第2オブジェクトに前記第1オブジェクトを攻撃させる制御であり、前記第2制御方法は、前記第2オブジェクトによる前記第1オブジェクトへの攻撃を停止させる制御である、請求項1から3のいずれかに記載の情報処理プログラム。
【請求項8】
前記第1制御方法は、前記第1オブジェクトが前記第2オブジェクトに接触した場合に前記第1オブジェクトにダメージを与える制御であり、前記第2制御方法は、前記第1オブジェクトが前記第2オブジェクトに接触した場合に前記第1オブジェクトにダメージを与えない制御である、請求項1から3のいずれかに記載の情報処理プログラム。
【請求項9】
前記第1制御方法は、前記第2オブジェクトを前記仮想空間内の所定の位置に配置する制御であり、前記第2制御方法は、前記第2オブジェクトを、前記被操作オブジェクト変更手段によって前記被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更されたときの前記第2オブジェクトの位置またはその近傍に
とどめる制御である、請求項3に記載の情報処理プログラム。
【請求項10】
前記被操作オブジェクト変更手段は、前記被操作オブジェクトとなっている前記第1オブジェクトから発射された第3オブジェクトが前記第2オブジェクトに当たったときに、前記被操作オブジェクトとなるオブジェクトを前記第1オブジェクトから前記第2オブジェクトに変更する、請求項1から9のいずれかに記載の情報処理プログラム。
【請求項11】
前記被操作オブジェクト変更手段は、前記被操作オブジェクトとなるオブジェクトを前記第2オブジェクトから前記第1オブジェクトに変更した後、前記所定の条件を満たすまでの間に、前記被操作オブジェクトとするオブジェクトを前記第1オブジェクトから前記第2オブジェクトに変更することを許容する、請求項1から10のいずれかに記載の情報処理プログラム。
【請求項12】
前記第2オブジェクトは、前記被操作オブジェクトとされているときは、前記被操作オブジェクトとされていないときとは視覚的に区別可能となる、請求項1から11のいずれかに記載の情報処理プログラム。
【請求項13】
前記第2オブジェクト制御手段は、前記所定の条件を満たした後に、前記第1制御方法で前記第2オブジェクトを制御する、請求項1から12のいずれかに記載の情報処理プログラム。
【請求項14】
プレイヤによる入力を受け付ける入力受付手段と、
仮想空間内のオブジェクトのうち、前記入力受付手段にて受け付けた入力によって操作される被操作オブジェクトとするオブジェクトを第1オブジェクトと第2オブジェクトとの間で変更する被操作オブジェクト変更手段と、
前記第2オブジェクトが前記被操作オブジェクトとされていないときに、第1制御方法で前記第2オブジェクトを制御する第2オブジェクト制御手段と、
を備え、
前記第2オブジェクト制御手段は、前記被操作オブジェクト変更手段によって被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更された
ことに応じて、所定の条件を満たすまでの間は、前記第1制御方法とは異なる第2制御方法で前記第2オブジェクトを制御する、情報処理装置。
【請求項15】
プレイヤによる入力を受け付ける入力受付手段と、
仮想空間内のオブジェクトのうち、前記入力受付手段にて受け付けた入力によって操作される被操作オブジェクトとするオブジェクトを第1オブジェクトと第2オブジェクトとの間で変更する被操作オブジェクト変更手段と、
前記第2オブジェクトが前記被操作オブジェクトとされていないときに、第1制御方法で前記第2オブジェクトを制御する第2オブジェクト制御手段と、
を備え、
前記第2オブジェクト制御手段は、前記被操作オブジェクト変更手段によって被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更された
ことに応じて、所定の条件を満たすまでの間は、前記第1制御方法とは異なる第2制御方法で前記第2オブジェクトを制御する、情報処理システム。
【請求項16】
仮想空間内のオブジェクトのうちの第1オブジェクトを被操作オブジェクトとして、前記第1オブジェクトをプレイヤから受け付けた入力に従って制御するとともに、前記仮想空間内のオブジェクトのうちの第2オブジェクトを第1制御方法で制御する第1ステップと、
前記被操作オブジェクトとするオブジェクトを前記第1オブジェクトから前記第2オブジェクトに変更する第2ステップと、
前記第2ステップの後に、前記被操作オブジェクトとするオブジェクトを前記第2オブ
ジェクトから前記第1オブジェクトに変更する第3ステップと、
前記第3ステップ
に応じて、所定の条件を満たすまでの間に、前記第1オブジェクトを前記被操作オブジェクトとして、前記第1オブジェクトをプレイヤから受け付けた入力に従って制御するとともに、前記第2オブジェクトを前記第1制御方法とは異なる第2制御方法で制御する第4ステップと、
を含む、情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想空間のオブジェクトについて情報処理を行う情報処理プログラム、情報処理装置、情報処理方法、および情報処理システムに関するものである。
【背景技術】
【0002】
仮想空間においてプレイヤオブジェクトおよびノンプレイヤオブジェクトが動作(アクション)をしながら展開するゲームが知られている。プレイヤオブジェクトは、プレイヤがコントローラ等の入力装置に操作を入力することで、その入力に従って仮想空間内で操作されるオブジェクトである。主に仮想空間内のキャラクタがプレイヤオブジェクトとなるので、以下ではプレイヤオブジェクトをプレイヤキャラクタ(PC)という。
【0003】
一方、ノンプレイヤオブジェクトは、所定の制御方法によってその動作が制御されるオブジェクトである。ノンプレイヤオブジェクトも、典型的には仮想空間内のキャラクタとして表現されるので、以下ではノンプレイヤオブジェクトをノンプレイヤキャラクタ(NPC)という。例えば、NPCは、所定の制御方法によって、PCに近づくよう移動する、PCに向かって攻撃をする、仮想空間内の所定の位置に留まって動作する、仮想空間内を一定の方向に向かって移動する等の動作を行う。
【0004】
仮想空間にPCとNPCが登場するゲームにおいて、PCがNPCに乗り移ることができる(PCがNPCに憑依できる)という仕掛けが用意されたゲームが知られている。PCに乗り移られたNPCは、プレイヤの入力に従って制御されることになる。これにより、プレイヤは、PCがNPCに乗り移ってNPCを操ることができるというゲーム効果が得られる。
【0005】
例えば、特許文献1には、PCが幽霊状態になると、NPCに憑依でき、また、NPCから離脱できるゲームが開示されている。PCは、憑依と離脱を繰り返すことで、複数のNPCに次々に乗り移ることができる。特許文献1のゲームでは、PCが幽霊状態になると、周囲の時間の進み方が遅くなる(NPCの動きを鈍くする)という制御が行われる。また、乗り移り可能なNPCにPCが乗り移った後に、その乗り移りを解除した場合には、PCがNPCから離脱する演出が行われ、PCはNPCの近傍に出現することになる。ここで、例えばプレイヤが誤って解除操作を行ってしまった時などのように、PCがNPCから離脱した直後に再度NPCに乗り移りたい場合が存在する。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
単にプレイヤが再度の乗り移りを行うことを容易にするためだけであれば、特許文献1のようにNPCの動きを鈍くするようにすればよい。しかしながら、PCがNPCに乗り移り可能な状況で常にNPCの動きを鈍くすると、NPCへの乗り移りが常に容易となり、ゲームの興趣性が失われる。
【0008】
本発明は、仮想空間においてPCがNPCに乗り移り、ゲームの興趣性を保ちながら再度の乗り移りを容易に行うことを実現する情報処理装置等を提供することを目的とする。
【課題を解決するための手段】
【0009】
一態様の情報処理プログラムは、情報処理装置を、プレイヤによる入力を受け付ける入力受付手段、仮想空間内のオブジェクトのうち、前記入力受付手段にて受け付けた入力によって操作される被操作オブジェクトとするオブジェクトを第1オブジェクトと第2オブジェクトとの間で変更する被操作オブジェクト変更手段、および前記第2オブジェクトが前記被操作オブジェクトとされていないときに、第1制御方法で前記第2オブジェクトを制御する第2オブジェクト制御手段として機能させ、前記第2オブジェクト制御手段は、前記被操作オブジェクト変更手段によって被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更された後、所定の条件を満たすまでの間は、前記第1制御方法とは異なる第2制御方法で前記第2オブジェクトを制御する構成を有している。
【0010】
この構成により、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトについて通常時とは異なる制御をすることができる。
【0011】
上記の情報処理プログラムは、前記情報処理装置を、さらに、前記第1オブジェクトが前記被操作オブジェクトとされているときは、前記第1オブジェクトを表示し、前記第2オブジェクトが前記被操作オブジェクトとされているときは、前記第1オブジェクトを非表示とさする第1オブジェクト制御手段として機能させて良い。
【0012】
この構成により、第1オブジェクトが第2オブジェクトに乗り移る(憑依する)演出が得られる。
【0013】
前記情報処理装置を、さらに、前記第1オブジェクトは、前記被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更されたときに、前記第1オブジェクトを前記第2オブジェクトの近傍に配置する第1オブジェクト制御手段として機能させてよい。
【0014】
この構成により、第1オブジェクトの乗り移りが解除されたときに、第1オブジェクトが第2オブジェクトから離脱した演出が得られるとともに、第1オブジェクトが再度第2オブジェクトに乗り移ることも容易になる。
【0015】
前記第1制御方法は、前記第2オブジェクトを前記仮想空間内で移動させる制御であり、前記第2制御方法は、前記第2オブジェクトを停止させる制御であってよい。
【0016】
この構成により、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトを停止させておくことができる。
【0017】
前記第1制御方法は、前記第2オブジェクトを前記第1オブジェクトに近づくように移動させる制御であってよい。
【0018】
この構成により、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトをPC10に近寄ってこないように制御できる。
【0019】
前記第1制御方法は、前記第2オブジェクトを前記第1オブジェクトから遠ざかるように移動させる制御であってよい。
【0020】
この構成により、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトをPC10から遠ざからないように制御できる。
【0021】
前記第1制御方法は、前記第2オブジェクトに前記第1オブジェクトを攻撃させる制御であり、前記第2制御方法は、前記第2オブジェクトによる前記第1オブジェクトへの攻撃を停止させる制御であってよい。
【0022】
この構成により、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトをPC10を攻撃しないように制御できる。
【0023】
前記第1制御方法は、前記第1オブジェクトが前記第2オブジェクトに接触した場合に前記第1オブジェクトにダメージを与える制御であり、前記第2制御方法は、前記第1オブジェクトが前記第2オブジェクトに接触した場合に前記第1オブジェクトにダメージを与えない制御であってよい。
【0024】
この構成により、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトをPC10に接触してもPC10にダメージを与えないように制御できる。
【0025】
前記第1制御方法は、前記第2オブジェクトを前記仮想空間内の所定の位置に配置する制御であり、前記第2制御方法は、前記第2オブジェクトを、前記被操作オブジェクト変更手段によって前記被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更されたときの前記第2オブジェクトの位置またはその近傍に配置する制御であってよい。
【0026】
この構成により、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトを本来の定位置に戻らないように制御できる。
【0027】
前記被操作オブジェクト変更手段は、前記被操作オブジェクトとなっている前記第1オブジェクトから発射された第3オブジェクトが前記第2オブジェクトに当たったときに、前記被操作オブジェクトとなるオブジェクトを前記第1オブジェクトから前記第2オブジェクトに変更してよい。
【0028】
この構成により、第1オブジェクトについて第3オブジェクトを発射させて第2オブジェクトに当てるという動作によって、被操作オブジェクトを第1オブジェクトから第2オブジェクトに変更できる。
【0029】
前記被操作オブジェクト変更手段は、前記被操作オブジェクトとなるオブジェクトを前記第2オブジェクトから前記第1オブジェクトに変更した後、前記所定の条件を満たすまでの間に、前記被操作オブジェクトとするオブジェクトを前記第1オブジェクトから前記第2オブジェクトに変更することを許容してよい。
【0030】
この構成により、第1オブジェクトは、第2オブジェクトから離脱した直後に再び第2オブジェクトに乗り移ることができる。
【0031】
前記第2オブジェクトは、前記被操作オブジェクトとされているときは、前記被操作オブジェクトとされていないときとは視覚的に区別可能となってよい。
【0032】
この構成により、第2オブジェクトが被操作オブジェクトとされていることが、プレー中にプレイヤに認識されやすくなる。
【0033】
前記第2オブジェクト制御手段は、前記所定の条件を満たした後に、前記第1制御方法で前記第2オブジェクトを制御してよい。
【0034】
この構成により、第1オブジェクトの第2オブジェクトへの乗り移りが解除されて所定の条件を満たした後に、第2オブジェクトが通常の制御方法によって制御される。
【0035】
本発明の一態様の情報処理装置は、プレイヤによる入力を受け付ける入力受付手段と、仮想空間内のオブジェクトのうち、前記入力受付手段にて受け付けた入力によって操作される被操作オブジェクトとするオブジェクトを第1オブジェクトと第2オブジェクトとの間で変更する被操作オブジェクト変更手段と、前記第2オブジェクトが前記被操作オブジェクトとされていないときに、第1制御方法で前記第2オブジェクトを制御する第2オブジェクト制御手段とを備え、前記第2オブジェクト制御手段は、前記被操作オブジェクト変更手段によって被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更された後、所定の条件を満たすまでの間は、前記第1制御方法とは異なる第2制御方法で前記第2オブジェクトを制御する構成を有している。
【0036】
この構成によっても、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトについて通常時とは異なる制御をすることができる。
【0037】
本発明の一態様の情報処理システムは、プレイヤによる入力を受け付ける入力受付手段と、仮想空間内のオブジェクトのうち、前記入力受付手段にて受け付けた入力によって操作される被操作オブジェクトとするオブジェクトを第1オブジェクトと第2オブジェクトとの間で変更する被操作オブジェクト変更手段と、前記第2オブジェクトが前記被操作オブジェクトとされていないときに、第1制御方法で前記第2オブジェクトを制御する第2オブジェクト制御手段とを備え、前記第2オブジェクト制御手段は、前記被操作オブジェクト変更手段によって被操作オブジェクトとなるオブジェクトが前記第2オブジェクトから前記第1オブジェクトに変更された後、所定の条件を満たすまでの間は、前記第1制御方法とは異なる第2制御方法で前記第2オブジェクトを制御する構成を有している。
【0038】
この構成によっても、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトについて通常時とは異なる制御をすることができる。
【0039】
本発明の一態様のお情報処理方法は、仮想空間内のオブジェクトのうちの第1オブジェクトを被操作オブジェクトとして、前記第1オブジェクトをプレイヤから受け付けた入力に従って制御するとともに、前記仮想空間内のオブジェクトのうちの第2オブジェクトを第1制御方法で制御する第1ステップと、前記被操作オブジェクトとするオブジェクトを前記第1オブジェクトから前記第2オブジェクトに変更する第2ステップと、前記第2ステップの後に、前記被操作オブジェクトとするオブジェクトを前記第2オブジェクトから前記第1オブジェクトに変更する第3ステップと、前記第3ステップの後、所定の条件を満たすまでの間に、前記第1オブジェクトを前記被操作オブジェクトとして、前記第1オブジェクトをプレイヤから受け付けた入力に従って制御するとともに、前記第2オブジェクトを前記第1制御方法とは異なる第2制御方法で制御する第4ステップとを含む構成を有している。
【0040】
この構成によっても、第1オブジェクトの乗り移りが解除された直後の第2オブジェクトについて通常時とは異なる制御をすることができる。
【図面の簡単な説明】
【0041】
【
図1】本体装置に左コントローラおよび右コントローラを装着した状態の一例を示す図
【
図2】本体装置から左コントローラおよび右コントローラをそれぞれ外した状態の一例を示す図
【
図7】本体装置と左コントローラおよび右コントローラとの内部構成の一例を示すブロック図
【
図12】ゲームシステムの機能的な構成を示すブロック図
【
図16】NPCの第2制御方法の変形例を説明するためのゲーム画面の例を示す図
【
図17】NPCの第2制御方法の変形例を説明するためのゲーム画面の例を示す図
【
図18】NPCの第2制御方法の変形例を説明するためのゲーム画面の例を示す図
【
図19】NPCの第2制御方法の変形例を説明するためのゲーム画面の例を示す図
【発明を実施するための形態】
【0042】
以下、図面を参照して本発明の実施の形態を説明する。なお、以下に説明する実施の形態は、本発明を実施する場合の一例を示すものであって、本発明を以下に説明する具体的構成に限定するものではない。本発明の実施にあたっては、実施の形態に応じた具体的構成が適宜採用されてよい。以下では、情報処理システムがゲームシステムとして構成される例を説明する。
【0043】
以下、本実施形態の一例に係るゲームシステムについて説明する。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる(
図2参照)。以下では、本実施形態のゲームシステム1のハードウェア構成について説明し、その後に本実施形態のゲームシステム1の制御について説明する。
【0044】
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。
図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
【0045】
図2は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。
図1および
図2に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
【0046】
図3は、本体装置2の一例を示す六面図である。
図3に示すように、本体装置2は、略板状のハウジング11を備える。本実施形態において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。
【0047】
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
【0048】
図3に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
【0049】
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
【0050】
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、
図6に示すスピーカ88)を備えている。
図3に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカ88の出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
【0051】
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。
【0052】
図3に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。また、本体装置2は、電源ボタン28を備える。
【0053】
本体装置2は、下側端子27を備える。下側端子27は、本体装置2がクレードルと通信を行うための端子である。本実施形態において、下側端子27は、USBコネクタ(より具体的には、メス側コネクタ)である。上記一体型装置または本体装置2単体をクレードルに載置した場合、ゲームシステム1は、本体装置2が生成して出力する画像を据置型モニタに表示することができる。また、本実施形態においては、クレードルは、載置された上記一体型装置または本体装置2単体を充電する機能を有する。また、クレードルは、ハブ装置(具体的には、USBハブ)の機能を有する。
【0054】
図4は、左コントローラ3の一例を示す六面図である。
図4に示すように、左コントローラ3は、ハウジング31を備える。本実施形態においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、
図1および
図4に示すy軸方向)に長い形状である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0055】
左コントローラ3は、アナログスティック32を備える。
図4に示すように、アナログスティック32は、ハウジング31の主面に設けられる。アナログスティック32は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック32を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。なお、左コントローラ3は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック32を押下する入力が可能である。
【0056】
左コントローラ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プログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
【0057】
また、左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。
【0058】
図5は、右コントローラ4の一例を示す六面図である。
図5に示すように、右コントローラ4は、ハウジング51を備える。本実施形態においては、ハウジング51は、縦長の形状、すなわち、上下方向に長い形状である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0059】
右コントローラ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を備える。
【0060】
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
【0061】
図6は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、
図3に示す構成の他、
図6に示す各構成要素81~91、97、および98を備える。これらの構成要素81~91、97、および98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
【0062】
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
【0063】
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【0064】
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
【0065】
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
【0066】
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、第1の通信態様としてWi-Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
【0067】
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
【0068】
プロセッサ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は、クレードルを介してデータ(例えば、画像データや音声データ)を据置型モニタ等に出力することができる。
【0069】
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、複数のユーザは、左コントローラ3および右コントローラ4のセットをそれぞれ用いて、本体装置2に対する入力を同時に行うことができる。一例として、第1ユーザが左コントローラ3および右コントローラ4の第1セットを用いて本体装置2に対して入力を行うと同時に、第2ユーザが左コントローラ3および右コントローラ4の第2セットを用いて本体装置2に対して入力を行うことが可能となる。
【0070】
本体装置2は、タッチパネル13の制御を行う回路であるタッチパネルコントローラ86を備える。タッチパネルコントローラ86は、タッチパネル13とプロセッサ81との間に接続される。タッチパネルコントローラ86は、タッチパネル13からの信号に基づいて、例えばタッチ入力が行われた位置を示すデータを生成して、プロセッサ81へ出力する。
【0071】
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
【0072】
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、プロセッサ81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。
【0073】
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
【0074】
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
【0075】
図7は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、
図6で示しているため
図7では省略している。
【0076】
左コントローラ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(登録商標)の規格に従って行われる。
【0077】
また、左コントローラ3は、例えばフラッシュメモリ等のメモリ102を備える。通信制御部101は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ102に記憶されるファームウェアを実行することによって各種の処理を実行する。
【0078】
左コントローラ3は、各ボタン103(具体的には、ボタン33~39、43、44、および47)を備える。また、左コントローラ3は、アナログスティック(
図7では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
【0079】
通信制御部101は、各入力部(具体的には、各ボタン103、アナログスティック32、各センサ104および105)から、入力に関する情報(具体的には、操作に関する情報、またはセンサによる検出結果)を取得する。通信制御部101は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
【0080】
上記操作データが本体装置2へ送信されることによって、本体装置2は、左コントローラ3に対して行われた入力を得ることができる。すなわち、本体装置2は、各ボタン103およびアナログスティック32に対する操作を、操作データに基づいて判別することができる。
【0081】
左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
【0082】
図7に示すように、右コントローラ4は、本体装置2との間で通信を行う通信制御部111を備える。また、右コントローラ4は、通信制御部111に接続されるメモリ112を備える。通信制御部111は、端子64を含む各構成要素に接続される。通信制御部111およびメモリ112は、左コントローラ3の通信制御部101およびメモリ102と同様の機能を有する。したがって、通信制御部111は、端子64を介した有線通信と、端子64を介さない無線通信(具体的には、Bluetooth(登録商標)の規格に従った通信)との両方で本体装置2と通信を行うことが可能であり、右コントローラ4が本体装置2に対して行う通信方法を制御する。
【0083】
右コントローラ4は、左コントローラ3の各入力部と同様の各入力部を備える。具体的には、各ボタン113、およびログスティック52を備える。これらの各入力部については、左コントローラ3の各入力部と同様の機能を有し、同様に動作する。
【0084】
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
【0085】
次に、本実施形態のゲームシステム1の制御について説明する。
図8~11は、ゲーム画面の例を示す図である。
図8~11を参照して、ゲームシステム1にて実行されるゲームの概要を説明する。
図8に示すように、このゲームでは、仮想空間内にPC10と、NPC20が設定される。なお、
図8~11の例では、1つのNPC20のみが示されているが、複数のNPC20が仮想空間内に設定されてもよい。PC10は、帽子オブジェクト30を被っている。
【0086】
プレイヤは、コントローラを操作することで、仮想空間内でPC10を移動させ、PC10に各種のアクションを実行させることができる。PC10が実行可能なアクションとして、帽子オブジェクト30を投げる動作(帽子投げ動作)がある。帽子投げ動作では、PC10の頭部に装着された帽子オブジェクト30は、PC10から発射されて、所定の距離だけ進んだ後にPC10まで戻ってきて、再びPC10の頭部に装着される。
【0087】
NPC20は、ゲームプログラムに従って移動し、アクション実行条件が満たされると対応するアクションを実行する。NPC20が実行するアクションとして、PC10に近づくように移動する動作、PC10から遠ざかるように移動する動作、PC10に対して攻撃をする動作、接触したPC10に対してダメージを与える動作がある。攻撃には、PC10に対する直接の攻撃と、ハンマーのような飛び道具をPC10に投げつける攻撃がある。
【0088】
図9に示すように、PC10から発射された帽子オブジェクト30が、NPC20に当たると、
図10に示すように、PC10がNPC20に乗り移る。この乗り移りによって、PC10はゲーム画面上からは姿を消し、NPC20は、PC10が乗り移ったことが分かるように、PC10の一部の要素を取り入れたNPC20´として表示される。PC10がNPC20に乗り移ると、プレイヤはPC10の代わりにPC10が乗り移ったNPC20´を操作することができる。また、PC10の乗り移りを解除してNPC20´からPC10を離脱させることができる。
【0089】
図11は、PC10が乗り移ったNPC20´からPC10が離脱した状態を示している。この離脱により、PC10はゲーム画面に現れ、NPC20´は元のNPC20に戻る。このとき、PC10は、NPC20の近傍に出現する。あるいは、PC10が乗り移ったNPC20´からPC10が飛び出すようなアニメーションによって、PC10がNPC20の近傍に出現するようにしてもよい。
【0090】
NPC20は、この離脱から所定時間の間は、NPC20は気絶状態となって、動かずにその場に停止し、PC10への攻撃も停止し、かつ、PC10が接触してもPC10にダメージを与えないようにする。これにより、NPC20の近傍に出現したPC10が直ちにNPC20に攻撃を受けることがなく、接触してもダメージを受けることがなく、また、NPC20は移動せず停止しているのでPC10がNPC20に再度乗り移ることも容易となる。NPC20は、所定の時間が経過すると、元のとおりに移動、PC10への攻撃等を再開する。
【0091】
次に、上記のようなゲーム制御を行うためのゲームシステム1の構成について説明する。
図12は、ゲームシステム1の機能的な構成を示すブロック図である。ゲームシステム1は、入力受付部71と、ゲーム制御部72と、画面生成部73とを備えている。入力受付部71は、
図6に示した本体装置2の左側端子17、右側端子21、タッチパネルコントローラ86がこれに該当する。ゲーム制御部72および画面生成部73は、
図6に示した本体装置2のプロセッサ81が、スロット23に装着された記憶媒体またはフラッシュメモリ84に記憶されたゲームプログラムを実行することによって実現される。
【0092】
入力受付部71は、プレイヤが左コントローラ3、右コントローラ4、タッチパネル13に対して操作することでされた入力を受け付ける。ゲーム制御部72は、ゲームプログラムに従って、入力受付部71で受け付けた入力に応じてゲームを制御する。ゲーム制御部72は、PC制御部721と、被操作キャラクタ変更部722と、NPC制御部723を備えている。画面生成部73は、PC制御部721におけるPC制御処理、被操作キャラクタ変更部722における被操作キャラクタ変更処理、及びNPC制御部723におけるNPC制御処理を含むゲーム処理部72のゲーム処理の結果を反映したゲーム画面を生成して、ディスプレイに出力する。
【0093】
被操作キャラクタ変更部722は、仮想空間のオブジェクトのうち、入力受付部71で受け付けた入力によって操作させる被操作オブジェクトとするオブジェクトをPC10とNPC20との間で変更する。被操作キャラクタ変更部722は、ゲーム開始時には、PC10を被操作オブジェクトとする。
【0094】
被操作キャラクタ変更部722がPC10を被操作オブジェクトに設定すると、PC制御部721は、入力受付部71にて受け付けた入力に従って仮想空間内でPC10の挙動を制御する。具体的には、入力受付部71にて移動方向の入力を受けた場合には、PC制御部721は仮想空間内で当該移動方向に従ってPC10を移動させ、入力受付部71で帽子投げ動作の入力を受けた場合には、PC制御部721は、PC10に帽子投げ動作を実行させる。このように、PC10は、入力受付部71にて受け付けた入力によって操作され、仮想空間内で移動や各種アクションを実行する。
【0095】
PC10が被操作オブジェクトとされている場合には、NPC制御部723は、ゲームプログラムに従ってNPC20を制御する。こ場合のNPC制御部723によるNPC20の制御方法を以下、「第1制御方法」という。第1制御方法は、NPC20が被操作オブジェクトとされていない場合の通常時の制御方法である。例えば、NPC制御部723は、NPC20をPC10に向かって移動させ、所定のアクション条件が満たされると(例えば、NPC20とPC10との距離が所定の値より小さくなった場合)、PC10に攻撃をするようにNPC20を制御する。
【0096】
PC10が被操作オブジェクトとされている場合において、
図9に示す帽子投げ動作が行われたときには、被操作キャラクタ変更部722は、投げられた帽子オブジェクト30がNPC20に当たったか否かを判定する。被操作キャラクタ変更部722は、PC10から発射された帽子オブジェクト30がNPC20当たったと判定したときは、被操作オブジェクトとなるオブジェクトをPC10からNPC20に変更する。
【0097】
NPC20が被操作オブジェクトとされると、被操作キャラクタ変更部722は、まず、PC10の表示を消去し、NPC20が被操作オブジェクトとなったが視覚的に区別可能なように、NPC20の絵柄をPC10の要素を取り入れた絵柄に変更する。このように、乗り移りによって絵柄が変更されたNPC20を「NPC20´」と表記する(
図10参照)。
図10の例では、PC10に生えていた口髭がNPC20´に取り入れられ、NPC20´の腕にもPC10の要素が取り入られ、NPC20´の頭部の形状はPC10とPC20を合成したような形状となっている。このキャラクタの変更によって、NPC20がPC10に乗り移られた(PC10がNPC20に乗り移った)ことで、NPC20が被操作オブジェクトとされていることをゲーム中にプレイヤが認識できる。
【0098】
被操作キャラクタ変更部722がNPC20を被操作オブジェクトに設定すると、NPC制御部723は、入力受付部71にて受け付けた入力に従って仮想空間内でNPC20´の挙動を制御する。これにより、NPC20´は、入力受付部71にて受け付けた入力によって操作され、仮想空間内で移動や各種アクションを実行する。
【0099】
なお、NPC20が被操作オブジェクトとされると、PC10の表示が消去されるが、ゲーム制御部72は、ゲーム処理としては、PC10がNPC20´に随伴して移動するように処理する。これによって、例えば、NPC20´が仮想空間内の墜落死判定領域まで墜落する場合には、PC10もNPC20´とともに墜落して、ゲーム処理部72は、PC10について墜落死したというゲーム処理をする。
【0100】
プレイヤはNPC20への乗り移りを解除することができる。本実施の形態では、プレイヤは右コントローラ4のBボタン54を押下することで、乗り移りを解除できる。NPC20が乗り移り状態にあるときに、入力受付部71にてBボタン54の押下の入力を受け付けると、被操作キャラクタ変更部722は、被操作キャラクタとなるキャラクタをNPC20からPC10に変更する。
【0101】
PC10が被操作オブジェクトとされると、被操作キャラクタ変更部722は、PC10をNPC20´の近傍に出現させる。NPC20´は、被操作オブジェクトではなくなったため、NPC制御部723は、NPC20´の絵柄を元に戻してNPC20とする(
図11参照)。
【0102】
被操作キャラクタ変更部722にて被操作キャラクタとなるキャラクタがNPC20からPC10に変更されると、PC制御部721は、入力受付部71にて受け付けた入力に従って仮想空間内でPC10の挙動を制御する。
【0103】
NPC制御部723は、被操作オブジェクト変更部722によって被操作オブジェクトとなるオブジェクトがNPC20からPC10に変更された後、所定の条件を満たすまでの間は、第1制御方法とは異なる制御方法でNPCを制御する。この場合のNPC制御部723によるNPC20の制御方法を以下、「第2制御方法」という。例えば、NPC制御部723は、第2制御方法によって、NPC20をその場に停止させ、PC10に対する攻撃も停止し、PC10が接触してもPC10にダメージを与えないようにNPC20を制御する。
【0104】
NPC制御部723は、所定の条件が満たされると、第2制御方法(例えば、その場で停止、攻撃なし、ダメージ付与なし)から第1制御方法(例えば、PC10を追って移動、PC10に攻撃、接触したPC10にダメージを付与)に切り替えてNPC20を制御する。本実施の形態では、第2制御方法から第1制御方法に切り替える所定の条件は、PC10がNPC20から離脱してから所定の時間(例えば3秒)が経過することである。すなわち、NPC制御部723は、PC10によるNPC20への乗り移りが解除されて、NPC20の近くにPC10が出現してから所定の時間は、NPC20をその場に停止させる。
【0105】
被操作キャラクタ変更部722は、NPC20が第2制御方法によって制御されている場合において、PC10が帽子投げ動作を行い、かつ帽子オブジェクト30がNPC20に当たったと判定したときは、再び被操作オブジェクトとなるオブジェクトをPC10からNPC20に変更する。すなわち、NPC20が第1制御方法で制御されているか第2制御方法で制御されているかに関わらず、被操作キャラクタの変更が許容され、被操作キャラクタ変更部722は、帽子オブジェクト30がNPC20に当たったと判定したときは、被操作オブジェクトとなるオブジェクトをPC10からNPC20に変更する。
【0106】
NPC制御部723が乗り移り解除後に第1制御方法とは異なる第2制御方法によってNPC20を制御することによって、PC10は乗り移り解除後に近くにいるNPC20に直ちに攻撃を受けることがなく、また、第2制御方法下ではNPC20が移動しないで停止しているので、再度NPC20に乗り移ることも容易となる。なお、この乗り移り解除(離脱)後のNPC20の制御としては、例えば、3秒間は攻撃を停止し、5秒間は移動を停止するというように、段階的に第2制御方法から第1制御方法に移行していくようにしてもよい。
【0107】
図13は、被操作キャラクタ変更部722による被操作キャラクタ変更処理のフロー図である。上述のようにゲーム開始時には、まず、PC10が被操作キャラクタとされている。被操作キャラクタ変更部722は、NPC20に帽子オブジェクト30が当たったか否かを判定する(ステップS131)。NPC20に帽子オブジェクト30が当たっていない場合には(ステップS131にてNO)、この判定を繰り返す。
【0108】
被操作キャラクタ変更部722は、NPC20に帽子オブジェクト30が当たったと判定した場合には(ステップS131にてYES)、被操作キャラクタとなるキャラクタをPC10からNPC20に変更する(ステップS132)。そして、被操作キャラクタ変更部722は、PC10を非表示とし、NPC20の絵柄を変更してNPC20´とする(ステップS133)。
【0109】
次に、被操作キャラクタ変更部722は、乗り移りを解除するためのBボタン54が押下されたか否かを判定する(ステップS134)。Bボタン54が押下されていない場合は(ステップS134にてNO)、この判定を繰り返す。被操作キャラクタ変更部722は、Bボタン54が押下されると(ステップS134にてYES)、被操作キャラクタとなるキャラクタをNPC20からPC10に変更する(ステップS135)。そして、被操作キャラクタ変更部722は、非表示となっていたPC10を表示し、NPC20´をもとの絵柄に戻すように変更する(ステップS136)。その後、ステップS131に戻る。
【0110】
図14は、PC制御部721によるPC制御処理のフロー図である。PC制御部721は、PC10が被操作オブジェクトとされているか否かを判定する(ステップS141)。PC制御部721は、PC10が被操作オブジェクトとされている場合は(ステップS141にてYES)、操作受付部71にて受け付けた入力に従ってPC10の挙動を制御する(ステップS142)。PC制御部721は、PC10が被操作オブジェクトとされていない場合は(ステップS141にてNO)、非表示とされたPC10をNPC20に随伴して移動させるよう制御する(ステップS143)。
【0111】
図15は、NPC制御部723によるNPC制御処理のフロー図である。NPC制御部723は、NPC20が被操作オブジェクトとされているか否かを判定する(ステップS151)。NPC制御部723は、NPC20が被操作オブジェクトとされていない場合は(ステップS151にてNO)、第1制御方法でNPC20の挙動を制御する(ステップS152)。NPC制御部723は、NPC20が被操作オブジェクトとされている場合には(ステップS151にてYES)、操作受付部71にて受け付けた入力に従ってNPC20の挙動を制御する(ステップS152)。
【0112】
そして、NPC制御部723は、NPC20が被操作オブジェクトとされたか否かを判定する(ステップS154)。NPC制御部723は、NPC20が被操作オブジェクトとされている場合は(ステップS154にてYES)、操作受付部71で受け付けた入力に従ったNPC20の制御(ステップS153)を継続する。
【0113】
操作受付部71で受け付けた入力に従ったNPC20の制御(ステップS153)をしているときに、被操作オブジェクト変更部722によってNPC20が被操作オブジェクトでなくなると(ステップS154にてNO)、タイマをスタートさせて(ステップS155)、第2制御方法でNPC20の挙動を制御する(ステップS156)。そして、NPC制御部723は、タイマの経過時間が所定時間に達したか否かを判定する(ステップS157)。所定時間が経過していないときは(ステップS157にてNO)、第2制御方法によるNPC20の制御を継続し、所定時間が経過すると(ステップS157にてYES)、タイマをリセットして(ステップS158)、ステップS151に戻る。
【0114】
以上のように、本実施の形態のゲームシステム1によれば、PC10がNPC20に乗り移ってPC10が非表示とされた後に、乗り移りを解除(離脱)したとき(ステップS154にてNO)には、PC10はNPC20の近傍に出現するが、所定時間が経過するまではNPC20は停止し、PC10に対して攻撃もせず、PC10が接触してもPC10にダメージを与えない状態となる。よって、乗り移りの解除によって出現したPC10が近傍にいるNPC20に直ちに攻撃やダメージを受けることがなく、また、NPC20が停止しているので、再度の乗り移りも容易となる。
【0115】
上記の実施の形態では、第1制御方法による通常時の制御では、NPC20はゲームプログラムに従って、PC10を追いかけ、又はPC10から遠ざかるように移動し、所定の条件下でPC10に対して攻撃をし、PC10が接触するとPC10にダメージを与える状態とされ、第2制御方法による離脱直後の制御では、NPC20は移動、攻撃、ダメージ付与が停止された。すなわち、第2制御方法では、プレイヤ(PC10)にとって有利になるようにNPC20が制御されていた。このように、プレイヤにとって有利となるNPC20の制御は、上記の例に限られない。以下では、NPC20の第2制御方法の変形例を説明する。
【0116】
図16~19は、NPC20の第2制御方法の変形例を説明するためのゲーム画面の例を示す図である。
図16に示すように、仮想空間には、川を隔てて手前側の岸オブジェクトB1と向こう側の岸オブジェクトB2が設定されており、PC10は手前側の岸オブジェクトB1の上にいる。川には雲の形をしたNPC20が浮かんでおり、NPC20は岸オブジェクトB1に接岸している。すなわち、NPC20は、
図16に示す位置を定位置として川に浮かんでいる。
【0117】
PC10は、川の中ないし上を進むことはできない。PC10は、NPC20に接触することで、NPC20に乗り移ることができる。PC10がNPC20に乗り移ると、上記の実施の形態と同様に、NPC20は一部にPC10の要素を取り入れた絵柄に変更されてNPC20´となる。この状態で、プレイヤは、NPC20´を操作して川を渡ることができる。
【0118】
また、プレイヤは、Bボタン54を押下することで、乗り移りを解除できる。NPC20´が川を進んで岸オブジェクトB2に到達した状態で乗り移りを解除すると、
図18に示すように、NPC20´の絵柄はNPC20に戻り、PC10がNPC20の近傍であって、岸オブジェクトB2の上に出現する。NPC20´はNPC20に戻ったので、元の制御に戻る場合には定位置である位置20aに戻ることになるが、所定の条件が満たされるまでは、PC10が離脱したNPC20は、そのときの位置又はその近傍にとどまり、所定の条件が満たされたときに、定位置20aに戻る。
【0119】
ここで、本変形例では、NPC20がPC10の離脱時の位置にとどまる制御が第2制御方法であり、NPC20が定位置20aにとどまる制御が第1制御方法である。本例では、乗り移りが解除されたNPC20が定位置20aに戻るための所定の条件は、離脱によって出現したPC10が、NPC20から所定の距離以上離れることである。
図19の例では、PC10は、離脱後のNPC20から所定の距離以上離れているので、NPC20は定位置20aに戻っている。
【0120】
PC10は、岸オブジェクトB2に接岸しているNPC20に接触することで、再度NPC20に乗り移ることができる。NPC20に乗り移った後には、NPC20はNPC20´に変形して被操作オブジェクトとされる。プレイヤがNPC20´を操作することでNPC20´が岸オブジェクトB1に到達し、ここで乗り移りを解除すると、NPC20´はNPC20に変形するとともに、そのNPC20の近傍であって岸オブジェクトB1の上にPC10が出現する。
【0121】
このように、本変形例では、PC10は、NPC20に乗り移って川を渡って向こう側の岸オブジェクトB2に上陸することができ、また、岸オブジェクトB2からNPC20に乗り移って岸オブジェクトB1に戻ってくることもできる。このとき、PC10が向こう側の岸オブジェクトB2にてNPC20´から離脱したときに、NPC20が直ちに通常の制御に戻されることで、定位置20aに移動したのでは、岸オブジェクトB2に上陸したPC10は岸オブジェクトB1に戻ってこれなくなってしまう。そこで、PC10が離脱した後、PC10がNPC20から相当程度離れるまではNPC20をその離脱位置ないしその近傍で停止させておくこととしている。
【0122】
この変形例も
図12に示すゲームシステム1の構成によって実現できる。また、被操作オブジェクト722およびPC制御部721の処理のフローは、それぞれ
図13および
図14のフローと同じである。ただし、本変形例では、ステップS131において、PC10がNPC20に接触したか否かを判定する。
【0123】
図20は、本変形例のNPC制御部723によるNPC制御処理のフロー図である。NPC制御部723は、NPC20が被操作オブジェクトとされているか否かを判定する(ステップS201)。NPC制御部723は、NPC20が被操作オブジェクトとされていない場合は(ステップS201にてNO)、第1制御方法でNPC20の挙動を制御する(ステップS202)。すなわち、NPC制御部723は、定位置20aでNPC20を留まらせる。NPC制御部723は、NPC20が被操作オブジェクトとされている場合には(ステップS201にてYES)、操作受付部71にて受け付けた入力に従ってNPC20の挙動を制御する(ステップS203)。
【0124】
そして、NPC制御部723は、NPC20が被操作オブジェクトとされたか否かを判定する(ステップS204)。NPC制御部723は、NPC20が被操作オブジェクトとされている場合は(ステップS204にてYES)、操作受付部71で受け付けた入力に従ったNPC20の制御(ステップS203)を継続する。
【0125】
操作受付部71で受け付けた入力に従ったNPC20の制御(ステップS203)をしているときに、被操作オブジェクト変更部722によってNPC20が被操作オブジェクトでなくなると(ステップS204にてNO)、NPC制御部723は、第2制御方法でNPC20の挙動を制御する(ステップS205)。そして、NPC制御部723は、PC10がNPC20から所定の距離以上離れたか否かを判定する(ステップS206)。PC10がNPC20から所定の距離内にいるときは(ステップS206にてNO)、第2制御方法によるNPC20の制御を継続し、PC10がNPC20から所定の距離以上離れると(ステップS206にてYES)、ステップS201に戻る。
【0126】
このように、本変形例では、PC10がNPC20から離脱した直後(ステップS204にてNO)にはNPC20は定位置には戻らない。よって、PC10が岸オブジェクトB2に降り立った後に再び岸オブジェクトB1に戻りたい場合には、岸オブジェクトB2に接岸してとどまっているNPC20に乗り移ることができる。
【0127】
以上のように、上記の実施の形態およびその変形例では、PC10が離脱した直後のNPC20は、通常時の第1制御方法とは異なる第2制御方法によって制御されるが、この第2制御方法は、いずれもプレイヤ(PC10)にとってゲームの展開上、有利になるような制御方法である。
【0128】
なお、上記の実施の形態では、1つのNPC20のみを示したが、仮想空間には複数のNPCが存在していてよく、そのうちの特定の種類のNPCのみが上記の乗り移りが可能であってもよい。
【0129】
また、上記の実施の形態では、NPC制御部723は、PC10がNPC20に乗り移っていない通常時のNPC20の制御方法を第1制御方法として、乗り移り解除直後の通常と異なる制御方法を第2制御方法として、所定の条件を満たした後に第2制御方法から第1制御方法に戻すこととしたが、第2制御方法の後に、第1制御方法及び第2制御方法とは異なる第3制御方法によってNPC20を制御してもよい。さらに、NPC制御部723は、この第2制御方法から第3制御方法を経て、第1制御方法に戻すようにNPC20を制御してもよい。例えば、第1制御方法がNPC20をPC10に近づくように移動させる制御である場合に、第2制御方法はNPC20をその場で停止させる制御とし、第3制御方法は、NPC20をPC10から遠ざかるように移動させる制御としてよい。
【0130】
また、上記の実施の形態では、NPC制御部723は、第2制御方法として、乗り移り解除後のNPC20を、動かずにその場に停止させ、PC10への攻撃を停止し、かつ、PC10が接触してもPC10にダメージを与えないよう制御したが、第2制御方法は、これらの一部のみを行うものであってもよい。例えば、第2制御方法は、接触されたときにPC10にダメージを与えるが、PC10に対する攻撃及び移動は行わないという制御であってもよい。
【0131】
また、上記の実施の形態では、PC10がNPC20に乗り移った際にはNPC20をPC10が乗り移ったものであると視覚的に区別可能であるように、そのキャラクタを変更してNPC20´としたが、必ずしも乗り移ったNPC20の見た目を変更しなくてもよい。
【符号の説明】
【0132】
1 ゲームシステム
2 本体装置
3 左コントローラ
4 右コントローラ
10 プレイヤキャラクタ(PC)
20 ノンプレイヤキャラクタ(NPC)
30 帽子オブジェクト
71 入力受付部
72 ゲーム制御部
73 画面生成部
721 PC制御部
722 被操作キャラクタ変更部
723 NPC制御部