(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024128045
(43)【公開日】2024-09-20
(54)【発明の名称】ゲームプログラム、ゲームシステム、ゲーム装置、およびゲーム処理方法
(51)【国際特許分類】
A63F 13/493 20140101AFI20240912BHJP
A63F 13/55 20140101ALI20240912BHJP
A63F 13/5378 20140101ALI20240912BHJP
A63F 13/533 20140101ALI20240912BHJP
A63F 13/525 20140101ALI20240912BHJP
【FI】
A63F13/493
A63F13/55
A63F13/5378
A63F13/533
A63F13/525
【審査請求】未請求
【請求項の数】28
【出願形態】OL
(21)【出願番号】P 2024109363
(22)【出願日】2024-07-08
(62)【分割の表示】P 2023014039の分割
【原出願日】2023-02-01
(71)【出願人】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】100158780
【弁理士】
【氏名又は名称】寺本 亮
(74)【代理人】
【識別番号】100121359
【弁理士】
【氏名又は名称】小沢 昌弘
(74)【代理人】
【識別番号】100130269
【弁理士】
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】山本 直弥
(72)【発明者】
【氏名】清水 大悟
(72)【発明者】
【氏名】坂本 匡
(57)【要約】
【課題】少なくとも一部のゲーム処理を中断する待機期間における演出を豊富にすることができるゲームプログラム、ゲームシステム、ゲーム装置、およびゲーム処理方法を提供する。
【解決手段】現時点におけるプレイヤキャラクタの位置である移動元から離れた位置であって、ユーザの操作入力に基づいて指定された位置である移動先に、プレイヤキャラクタの位置を当該移動元から移す遠距離移動の指示が行われた場合に、少なくとも一部のゲーム処理を中断させ、中断されたゲーム処理を再開させるまでの待機期間を開始させ、待機期間が終了するまでの間、移動元の周辺のフィールド情報を表す第1のマップ画像を含む第1の表示を行わせ、第1の表示の後に、移動先の周辺のフィールド情報を表す第2のマップ画像を含む第2の表示を行わせ、待機期間の終了後、仮想空間内の移動先にプレイヤキャラクタを配置して、中断されたゲーム処理を再開させる。
【選択図】
図22
【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータに、
ユーザの操作入力に基づいて仮想空間内のフィールド上におけるプレイヤキャラクタを制御させるとともに、仮想カメラに基づいて当該フィールドを含むゲーム画像の表示を行わせるゲーム処理を行わせ、
現時点における前記プレイヤキャラクタの位置である移動元から離れた位置であって、ユーザの操作入力に基づいて指定された位置である移動先に、前記プレイヤキャラクタの位置を当該移動元から移す遠距離移動の指示が行われた場合に、
少なくとも一部の前記ゲーム処理を中断させ、
中断された前記ゲーム処理を再開させるまでの待機期間を開始させ、
前記待機期間が終了するまでの間、
前記移動元の周辺のフィールド情報を表す第1のマップ画像を含む第1の表示を行わせ、
前記第1の表示の後に、前記移動先の周辺のフィールド情報を表す第2のマップ画像を含む第2の表示を行わせ、
前記待機期間の終了後、前記仮想空間内の前記移動先に前記プレイヤキャラクタを配置して、中断された前記ゲーム処理を再開させる、ゲームプログラム。
【請求項2】
前記コンピュータに、さらに、ユーザの操作入力に基づいて、仮想空間内のフィールド情報を表すフィールドマップ画像を表示させる第3の表示を行わせ、
前記遠距離移動の指示は、前記第3の表示中において、前記移動先として前記フィールドマップ画像上の位置がユーザの操作入力に基づいて指定されることである、請求項1に記載のゲームプログラム。
【請求項3】
前記第1のマップ画像は、前記フィールドマップ画像中の前記移動元周辺の範囲であり、
前記第2のマップ画像は、前記フィールドマップ画像中の前記移動先周辺の範囲である、請求項2に記載のゲームプログラム。
【請求項4】
前記フィールドマップ画像は、前記フィールド情報が開示されている部分と開示されていない部分とを含み、
前記コンピュータに、前記ゲーム処理に基づいて、前記仮想空間内の所定の位置において所定のイベントが発生した場合に、当該イベントが発生した地点に対応する範囲のフィールド情報が開示されるよう前記フィールドマップ画像の更新を、さらに行わせる、請求項3に記載のゲームプログラム。
【請求項5】
前記第1の表示において、前記フィールド情報が開示されている部分と開示されていない部分とを含む前記フィールドマップ画像における前記移動元周辺の範囲をキャプチャすることによって、前記第1のマップ画像が生成されて表示され、
前記第2の表示において、前記フィールド情報が開示されている部分と開示されていない部分とを含む前記フィールドマップ画像における前記移動先周辺の範囲をキャプチャすることによって、前記第2のマップ画像が生成されて表示される、請求項4に記載のゲームプログラム。
【請求項6】
前記第1の表示中の所定期間において、前記第1のマップ画像を、前記移動元から前記移動先に向かう当該マップ画像上の方向と逆方向へスライドさせて表示させ、
前記第2の表示中の所定期間において、前記第2のマップ画像を、前記移動元から前記移動先に向かう当該マップ画像上の方向と逆方向へスライドさせて表示させる、請求項1に記載のゲームプログラム。
【請求項7】
前記第1の表示中において、前記第1のマップ画像上の前記移動元の位置に、前記プレイヤキャラクタの位置を示すアイコン画像が含まれる表示を行わせ、その後の所定のタイミングにおいて当該アイコン画像を消去させ、
前記第2の表示中において、前記アイコン画像を含まない前記第2のマップ画像を表示させ、その後の所定のタイミングで前記アイコン画像が前記第2のマップ画像上の前記移動先の位置に出現する表示を行わせる、請求項1に記載のゲームプログラム。
【請求項8】
前記コンピュータに、さらに、
前記待機期間において、前記移動先のフィールドにおけるデータを少なくとも含むデータのメモリへの読み出しを行わせ、
前記読み出しの完了後に前記待機期間を終了させる、請求項1乃至7の何れか1つに記載のゲームプログラム。
【請求項9】
前記第1の表示を、少なくとも第1の期間継続させ、
前記第2の表示を、前記第1の期間終了後において、第2の期間の経過または前記読み出しの進捗度合いが所定の度合いに達したことに応じて開始させる、請求項8に記載のゲームプログラム。
【請求項10】
プロセッサを備えたゲームシステムであって、
前記プロセッサは、
ユーザの操作入力に基づいて仮想空間内のフィールド上におけるプレイヤキャラクタを制御するとともに、仮想カメラに基づいて当該フィールドを含むゲーム画像の表示を行うゲーム処理を行い、
現時点における前記プレイヤキャラクタの位置である移動元から離れた位置であって、ユーザの操作入力に基づいて指定された位置である移動先に、前記プレイヤキャラクタの位置を当該移動元から移す遠距離移動の指示が行われた場合に、
少なくとも一部の前記ゲーム処理を中断し、
中断された前記ゲーム処理を再開させるまでの待機期間を開始し、
前記待機期間が終了するまでの間、
前記移動元の周辺のフィールド情報を表す第1のマップ画像を含む第1の表示を行い、
前記第1の表示の後に、前記移動先の周辺のフィールド情報を表す第2のマップ画像を含む第2の表示を行い、
前記待機期間の終了後、前記仮想空間内の前記移動先に前記プレイヤキャラクタを配置して、中断された前記ゲーム処理を再開する、ゲームシステム。
【請求項11】
前記プロセッサは、さらに、ユーザの操作入力に基づいて、仮想空間内のフィールド情報を表すフィールドマップ画像を表示させる第3の表示を行い、
前記遠距離移動の指示は、前記第3の表示中において、前記移動先として前記フィールドマップ画像上の位置がユーザの操作入力に基づいて指定されることである、請求項10に記載のゲームシステム。
【請求項12】
前記第1のマップ画像は、前記フィールドマップ画像中の前記移動元周辺の範囲であり、
前記第2のマップ画像は、前記フィールドマップ画像中の前記移動先周辺の範囲である、請求項11に記載のゲームシステム。
【請求項13】
前記フィールドマップ画像は、前記フィールド情報が開示されている部分と開示されていない部分とを含み、
前記プロセッサは、前記ゲーム処理に基づいて、前記仮想空間内の所定の位置において所定のイベントが発生した場合に、当該イベントが発生した地点に対応する範囲のフィールド情報が開示されるよう前記フィールドマップ画像の更新を、さらに行う、請求項12に記載のゲームシステム。
【請求項14】
前記第1の表示において、前記フィールド情報が開示されている部分と開示されていない部分とを含む前記フィールドマップ画像における前記移動元周辺の範囲をキャプチャすることによって、前記第1のマップ画像が生成されて表示され、
前記第2の表示において、前記フィールド情報が開示されている部分と開示されていない部分とを含む前記フィールドマップ画像における前記移動先周辺の範囲をキャプチャすることによって、前記第2のマップ画像が生成されて表示される、請求項13に記載のゲームシステム。
【請求項15】
前記第1の表示中の所定期間において、前記第1のマップ画像を、前記移動元から前記移動先に向かう当該マップ画像上の方向と逆方向へスライドさせて表示させ、
前記第2の表示中の所定期間において、前記第2のマップ画像を、前記移動元から前記移動先に向かう当該マップ画像上の方向と逆方向へスライドさせて表示させる、請求項10に記載のゲームシステム。
【請求項16】
前記第1の表示中において、前記第1のマップ画像上の前記移動元の位置に、前記プレイヤキャラクタの位置を示すアイコン画像が含まれる表示を行わせ、その後の所定のタイミングにおいて当該アイコン画像を消去させ、
前記第2の表示中において、前記アイコン画像を含まない前記第2のマップ画像を表示させ、その後の所定のタイミングで前記アイコン画像が前記第2のマップ画像上の前記移動先の位置に出現する表示を行わせる、請求項10に記載のゲームシステム。
【請求項17】
前記プロセッサは、さらに、
前記待機期間において、前記移動先のフィールドにおけるデータを少なくとも含むデータのメモリへの読み出しを行い、
前記読み出しの完了後に前記待機期間を終了する、請求項10乃至16の何れか1つに記載のゲームシステム。
【請求項18】
前記第1の表示を、少なくとも第1の期間継続させ、
前記第2の表示を、前記第1の期間終了後において、第2の期間の経過または前記読み出しの進捗度合いが所定の度合いに達したことに応じて開始させる、請求項17に記載のゲームシステム。
【請求項19】
プロセッサを備えたゲーム装置であって、
前記プロセッサは、
ユーザの操作入力に基づいて仮想空間内のフィールド上におけるプレイヤキャラクタを制御するとともに、仮想カメラに基づいて当該フィールドを含むゲーム画像の表示を行うゲーム処理を行い、
現時点における前記プレイヤキャラクタの位置である移動元から離れた位置であって、ユーザの操作入力に基づいて指定された位置である移動先に、前記プレイヤキャラクタの位置を当該移動元から移す遠距離移動の指示が行われた場合に、
少なくとも一部の前記ゲーム処理を中断し、
中断された前記ゲーム処理を再開させるまでの待機期間を開始し、
前記待機期間が終了するまでの間、
前記移動元の周辺のフィールド情報を表す第1のマップ画像を含む第1の表示を行い、
前記第1の表示の後に、前記移動先の周辺のフィールド情報を表す第2のマップ画像を含む第2の表示を行い、
前記待機期間の終了後、前記仮想空間内の前記移動先に前記プレイヤキャラクタを配置して、中断された前記ゲーム処理を再開する、ゲーム装置。
【請求項20】
情報処理装置のプロセッサに、
ユーザの操作入力に基づいて仮想空間内のフィールド上におけるプレイヤキャラクタを制御させるとともに、仮想カメラに基づいて当該フィールドを含むゲーム画像の表示を行わせるゲーム処理を行わせ、
現時点における前記プレイヤキャラクタの位置である移動元から離れた位置であって、ユーザの操作入力に基づいて指定された位置である移動先に、前記プレイヤキャラクタの位置を当該移動元から移す遠距離移動の指示が行われた場合に、
少なくとも一部の前記ゲーム処理を中断させ、
中断された前記ゲーム処理を再開させるまでの待機期間を開始させ、
前記待機期間が終了するまでの間、
前記移動元の周辺のフィールド情報を表す第1のマップ画像を含む第1の表示を行わせ、
前記第1の表示の後に、前記移動先の周辺のフィールド情報を表す第2のマップ画像を含む第2の表示を行わせ、
前記待機期間の終了後、前記仮想空間内の前記移動先に前記プレイヤキャラクタを配置して、中断された前記ゲーム処理を再開させる、ゲーム処理方法。
【請求項21】
前記プロセッサに、ユーザの操作入力に基づいて、仮想空間内のフィールド情報を表すフィールドマップ画像を表示させる第3の表示を、さらに行わせ、
前記遠距離移動の指示は、前記第3の表示中において、前記移動先として前記フィールドマップ画像上の位置がユーザの操作入力に基づいて指定されることである、請求項20に記載のゲーム処理方法。
【請求項22】
前記第1のマップ画像は、前記フィールドマップ画像中の前記移動元周辺の範囲であり、
前記第2のマップ画像は、前記フィールドマップ画像中の前記移動先周辺の範囲である、請求項21に記載のゲーム処理方法。
【請求項23】
前記フィールドマップ画像は、前記フィールド情報が開示されている部分と開示されていない部分とを含み、
前記プロセッサに、前記ゲーム処理に基づいて、前記仮想空間内の所定の位置において所定のイベントが発生した場合に、当該イベントが発生した地点に対応する範囲のフィールド情報が開示されるよう前記フィールドマップ画像の更新を、さらに行わせる、請求項22に記載のゲーム処理方法。
【請求項24】
前記第1の表示において、前記フィールド情報が開示されている部分と開示されていない部分とを含む前記フィールドマップ画像における前記移動元周辺の範囲をキャプチャすることによって、前記第1のマップ画像が生成されて表示され、
前記第2の表示において、前記フィールド情報が開示されている部分と開示されていない部分とを含む前記フィールドマップ画像における前記移動先周辺の範囲をキャプチャすることによって、前記第2のマップ画像が生成されて表示される、請求項23に記載のゲーム処理方法。
【請求項25】
前記第1の表示中の所定期間において、前記第1のマップ画像を、前記移動元から前記移動先に向かう当該マップ画像上の方向と逆方向へスライドさせて表示させ、
前記第2の表示中の所定期間において、前記第2のマップ画像を、前記移動元から前記移動先に向かう当該マップ画像上の方向と逆方向へスライドさせて表示させる、請求項20に記載のゲーム処理方法。
【請求項26】
前記第1の表示中において、前記第1のマップ画像上の前記移動元の位置に、前記プレイヤキャラクタの位置を示すアイコン画像が含まれる表示を行わせ、その後の所定のタイミングにおいて当該アイコン画像を消去させ、
前記第2の表示中において、前記アイコン画像を含まない前記第2のマップ画像を表示させ、その後の所定のタイミングで前記アイコン画像が前記第2のマップ画像上の前記移動先の位置に出現する表示を行わせる、請求項20に記載のゲーム処理方法。
【請求項27】
前記プロセッサに、さらに、
前記待機期間において、前記移動先のフィールドにおけるデータを少なくとも含むデータのメモリへの読み出しを行わせ、
前記読み出しの完了後に前記待機期間を終了させる、請求項20乃至26の何れか1つに記載のゲーム処理方法。
【請求項28】
前記第1の表示を、少なくとも第1の期間継続させ、
前記第2の表示を、前記第1の期間終了後において、第2の期間の経過または前記読み出しの進捗度合いが所定の度合いに達したことに応じて開始させる、請求項27に記載のゲーム処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想空間におけるプレイヤキャラクタを用いた処理を行うゲームプログラム、ゲームシステム、ゲーム装置、およびゲーム処理方法に関する。
【背景技術】
【0002】
従来、仮想空間におけるプレイヤキャラクタの位置を、地図上で指定された離れた位置に移すワープ等の移動(ファストトラベル(fast travel))が可能なゲームプログラムがある(例えば、非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】”The Legend of Zelda:Breath of the Wild“、[online]、Nintendo of America Inc.、[令和4年12月23日検索]、インターネット<URL:https://www.zelda.com/breath-of-the-wild>
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記非特許文献1で開示されたゲームプログラムは、プレイヤキャラクタがファストトラベルを行った場合に、少なくとも一部のゲーム処理を中断してロード等を行うための待機期間において、プレイされているゲームのヒント、コツ、アドバイス等をユーザに伝えるTipsが表示されるだけであった。
【0005】
そこで、本発明の目的は、少なくとも一部のゲーム処理を中断する待機期間における演出を豊富にすることができるゲームプログラム、ゲームシステム、ゲーム装置、およびゲーム処理方法を提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は例えば以下の(1)~(9)のような構成を採用し得る。
【0007】
(1)
本発明のゲームプログラムの一構成例は、情報処理装置のコンピュータに、ユーザの操作入力に基づいて仮想空間内のフィールド上におけるプレイヤキャラクタを制御させるとともに、仮想カメラに基づいて当該フィールドを含むゲーム画像の表示を行わせるゲーム処理を行わせ、現時点におけるプレイヤキャラクタの位置である移動元から離れた位置であって、ユーザの操作入力に基づいて指定された位置である移動先に、プレイヤキャラクタの位置を当該移動元から移す遠距離移動の指示が行われた場合に、少なくとも一部のゲーム処理を中断させ、中断されたゲーム処理を再開させるまでの待機期間を開始させ、待機期間が終了するまでの間、移動元の周辺のフィールド情報を表す第1のマップ画像を含む第1の表示を行わせ、第1の表示の後に、移動先の周辺のフィールド情報を表す第2のマップ画像を含む第2の表示を行わせ、待機期間の終了後、仮想空間内の移動先にプレイヤキャラクタを配置して、中断されたゲーム処理を再開させる。
【0008】
上記(1)の構成によれば、プレイヤキャラクタに遠距離移動させる際に開始される待機期間において行われる演出を豊富にすることができる。また、上記演出において、遠距離移動する移動元の周辺のフィールド情報を表す第1のマップ画像および移動先の周辺のフィールド情報を表す第2のマップ画像がそれぞれ表示されるため、当該遠距離移動の移動元および移動先のフィールドの状況をユーザに知らせることができる。したがって、待機期間においても、ユーザがフィールドを移動している感覚を得ることができる。
【0009】
(2)
上記(1)の構成において、上記コンピュータに、さらに、ユーザの操作入力に基づいて、仮想空間内のフィールド情報を表すフィールドマップ画像を表示させる第3の表示を行わせてもよい。上記遠距離移動の指示は、第3の表示中において、移動先としてフィールドマップ画像上の位置がユーザの操作入力に基づいて指定されることでもよい。
【0010】
上記(2)の構成によれば、マップ画像上の位置を指定することにより遠距離移動の移動先を設定することが可能となるため、仮想空間における移動元からの距離が遠い位置や異なるフィールド上の位置であっても容易に移動先を設定することができるとともに、移動先周辺の状況を把握しながら移動先を設定することができる。
【0011】
(3)
上記(2)の構成において、上記第1のマップ画像は、フィールドマップ画像中の移動元周辺の範囲でもよい。上記第2のマップ画像は、フィールドマップ画像中の移動先周辺の範囲でもよい。
【0012】
上記(3)の構成によれば、フィールドマップ画像を用いて、第1のマップ画像および第2のマップ画像を容易に生成することができる。
【0013】
(4)
上記(3)の構成において、上記フィールドマップ画像は、フィールド情報が開示されている部分と開示されていない部分とを含んでもよい。上記コンピュータに、ゲーム処理に基づいて、仮想空間内の所定の位置において所定のイベントが発生した場合に、当該イベントが発生した地点に対応する範囲のフィールド情報が開示されるようフィールドマップ画像の更新を、さらに行わせてもよい。
【0014】
上記(4)の構成によれば、ゲーム進行に応じてマップのフィールド情報が解放されるゲームにおいて、待機期間中に表示される第1のマップ画像および第2のマップ画像の表示を解放状況に合わせたものにできる。
【0015】
(5)
上記(4)の構成において、上記第1の表示において、フィールド情報が開示されている部分と開示されていない部分とを含むフィールドマップ画像における移動元周辺の範囲をキャプチャすることによって、第1のマップ画像が生成されて表示されてもよい。上記第2の表示において、フィールド情報が開示されている部分と開示されていない部分とを含むフィールドマップ画像における移動先周辺の範囲をキャプチャすることによって、第2のマップ画像が生成されて表示されてもよい。
【0016】
上記(5)の構成によれば、第1のマップ画像および第2のマップ画像の生成に処理負荷がかかる場合に、フィールドマップ画像をキャプチャして表示させることでマップ画像生成の処理負荷を軽減させることができる。特に、待機期間中に他の処理が行われる場合、上記処理負荷を軽減することが好ましいために有効となる。
【0017】
(6)
上記(1)乃至(5)の何れか1つの構成において、上記第1の表示中の所定期間において、第1のマップ画像を、移動元から移動先に向かう当該マップ画像上の方向と逆方向へスライドさせて表示させてもよい。上記第2の表示中の所定期間において、第2のマップ画像を、移動元から移動先に向かう当該マップ画像上の方向と逆方向へスライドさせて表示させてもよい。
【0018】
上記(6)の構成によれば、遠距離移動においてプレイヤキャラクタがマップ画像上で移される方向をユーザに直感的に示すことができる。
【0019】
(7)
上記(1)乃至(6)の何れか1つの構成において、上記第1の表示中において、第1のマップ画像上の移動元の位置に、プレイヤキャラクタの位置を示すアイコン画像が含まれる表示を行わせ、その後の所定のタイミングにおいて当該アイコン画像を消去させてもよい。上記第2の表示中において、アイコン画像を含まない第2のマップ画像を表示させ、その後の所定のタイミングでアイコン画像が第2のマップ画像上の移動先の位置に出現する表示を行わせてもよい。
【0020】
上記(7)の構成によれば、マップ画像上でプレイヤキャラクタが移動元の位置から一旦消滅して、移動先の位置から出現する遠距離移動の様子をユーザに直感的に示すことができる。
【0021】
(8)
上記(1)乃至(7)の何れか1つの構成において、上記コンピュータに、さらに、待機期間において、移動先のフィールドにおけるデータを少なくとも含むデータのメモリへの読み出しを行わせ、読み出しの完了後に待機期間を終了させてもよい。
【0022】
上記(8)の構成によれば、移動先のフィールドにおけるデータを少なくとも含むデータをロードする処理を行う期間において行われる演出を豊富にすることができる。
【0023】
(9)
上記(8)の構成において、上記第1の表示を、少なくとも第1の期間継続させてもよい。上記第2の表示を、第1の期間終了後において、第2の期間の経過または読み出しの進捗度合いが所定の度合いに達したことに応じて開始させてもよい。
【0024】
上記(9)の構成によれば、少なくとも第1の表示のための時間を確保するとともに、その後の時間経過と読み出しの進捗の早い方に応じて第2の表示が開始されるため、より重要な移動先の情報である第2の表示をデータ読み出し中の早い段階で開始することができる。
【0025】
また、本発明は、ゲームシステム、ゲーム装置、およびゲーム処理方法の形態で実施されてもよい。
【発明の効果】
【0026】
本発明によれば、プレイヤキャラクタに遠距離移動させる際に開始される待機期間において行われる演出を豊富にすることができる。
【図面の簡単な説明】
【0027】
【
図1】本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図
【
図2】本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図
【
図6】本体装置2の内部構成の一例を示すブロック図
【
図7】本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図
【
図8】本実施例における遠距離移動の指示方法の一例を示す図
【
図9】本実施例における遠距離移動演出の第1段階において表示されるゲーム画像の一例を示す図
【
図10】本実施例における遠距離移動演出の第2段階において表示されるゲーム画像の一例を示す図
【
図11】本実施例における遠距離移動演出の第3段階において表示されるゲーム画像の一例を示す図
【
図12】本実施例における遠距離移動演出の第4段階において表示されるゲーム画像の一例を示す図
【
図13】本実施例における遠距離移動演出の第5段階において表示されるゲーム画像の一例を示す図
【
図14】マップ画像のフィールド情報を解放する処理が行われる際に表示されるゲーム画像の例を示す図
【
図15】全エリアのフィールド情報が解放されていない地上マップ画像の一例とエリアαのフィールド情報が解放された地上マップ画像の一例とを示す図
【
図16】全エリアのフィールド情報が解放されていない空マップ画像の一例とエリアβのフィールド情報が解放された空マップ画像の一例とを示す図
【
図17】全エリアのフィールド情報が解放されていない地下マップ画像の一例とエリアγのフィールド情報が解放された地下マップ画像の一例とを示す図
【
図19】本体装置2のDRAM85に設定されるデータ領域の一例を示す図
【
図20】ゲームシステム1で実行されるゲーム処理の一例を示すフローチャート
【
図21】
図20におけるステップS126のマップ表示処理の一例を示すサブルーチン
【
図22】
図20におけるステップS128の遠距離移動演出処理の一例を示すサブルーチン
【
図23】
図20におけるステップS129のプレイヤ関連制御処理の一例を示すサブルーチン
【発明を実施するための形態】
【0028】
以下、本実施形態の一例に係るゲームシステムについて説明する。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる(
図2参照)。以下では、本実施形態のゲームシステム1のハードウェア構成について説明し、その後に本実施形態のゲームシステム1の制御について説明する。
【0029】
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。
図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
【0030】
図2は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。
図1および
図2に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
【0031】
図3は、本体装置2の一例を示す六面図である。
図3に示すように、本体装置2は、略板状のハウジング11を備える。本実施形態において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。
【0032】
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
【0033】
図3に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
【0034】
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
【0035】
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、
図6に示すスピーカ88)を備えている。
図3に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカ88の出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
【0036】
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。
【0037】
図3に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。また、本体装置2は、電源ボタン28を備える。
【0038】
本体装置2は、下側端子27を備える。下側端子27は、本体装置2がクレードルと通信を行うための端子である。本実施形態において、下側端子27は、USBコネクタ(より具体的には、メス側コネクタ)である。上記一体型装置または本体装置2単体をクレードルに載置した場合、ゲームシステム1は、本体装置2が生成して出力する画像を据置型モニタに表示することができる。また、本実施形態においては、クレードルは、載置された上記一体型装置または本体装置2単体を充電する機能を有する。また、クレードルは、ハブ装置(具体的には、USBハブ)の機能を有する。
【0039】
図4は、左コントローラ3の一例を示す六面図である。
図4に示すように、左コントローラ3は、ハウジング31を備える。本実施形態においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、
図1および
図4に示すy軸方向)に長い形状である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0040】
左コントローラ3は、アナログスティック32を備える。
図4に示すように、アナログスティック32は、ハウジング31の主面に設けられる。アナログスティック32は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック32を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。なお、左コントローラ3は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック32を押下する入力が可能である。
【0041】
左コントローラ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プログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
【0042】
また、左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。
【0043】
図5は、右コントローラ4の一例を示す六面図である。
図5に示すように、右コントローラ4は、ハウジング51を備える。本実施形態においては、ハウジング51は、縦長の形状、すなわち、上下方向に長い形状である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0044】
右コントローラ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を備える。
【0045】
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
【0046】
図6は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、
図3に示す構成の他、
図6に示す各構成要素81~91、97、および98を備える。これらの構成要素81~91、97、および98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
【0047】
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
【0048】
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【0049】
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
【0050】
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
【0051】
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、第1の通信態様としてWi-Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
【0052】
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
【0053】
プロセッサ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は、クレードルを介してデータ(例えば、画像データや音声データ)を据置型モニタ等に出力することができる。
【0054】
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、複数のユーザは、左コントローラ3および右コントローラ4のセットをそれぞれ用いて、本体装置2に対する入力を同時に行うことができる。一例として、第1ユーザが左コントローラ3および右コントローラ4の第1セットを用いて本体装置2に対して入力を行うと同時に、第2ユーザが左コントローラ3および右コントローラ4の第2セットを用いて本体装置2に対して入力を行うことが可能となる。
【0055】
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
【0056】
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、プロセッサ81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。
【0057】
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
【0058】
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
【0059】
図7は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、
図6で示しているため
図7では省略している。
【0060】
左コントローラ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(登録商標)の規格に従って行われる。
【0061】
また、左コントローラ3は、例えばフラッシュメモリ等のメモリ102を備える。通信制御部101は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ102に記憶されるファームウェアを実行することによって各種の処理を実行する。
【0062】
左コントローラ3は、各ボタン103(具体的には、ボタン33~39、43、44、および47)を備える。また、左コントローラ3は、アナログスティック(
図7では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
【0063】
通信制御部101は、各入力部(具体的には、各ボタン103、および、アナログスティック32)から、入力に関する情報(具体的には、操作に関する情報、またはセンサによる検出結果)を取得する。通信制御部101は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
【0064】
上記操作データが本体装置2へ送信されることによって、本体装置2は、左コントローラ3に対して行われた入力を得ることができる。すなわち、本体装置2は、各ボタン103およびアナログスティック32に対する操作を、操作データに基づいて判別することができる。
【0065】
左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
【0066】
図7に示すように、右コントローラ4は、本体装置2との間で通信を行う通信制御部111を備える。また、右コントローラ4は、通信制御部111に接続されるメモリ112を備える。通信制御部111は、端子64を含む各構成要素に接続される。通信制御部111およびメモリ112は、左コントローラ3の通信制御部101およびメモリ102と同様の機能を有する。したがって、通信制御部111は、端子64を介した有線通信と、端子64を介さない無線通信(具体的には、Bluetooth(登録商標)の規格に従った通信)との両方で本体装置2と通信を行うことが可能であり、右コントローラ4が本体装置2に対して行う通信方法を制御する。
【0067】
右コントローラ4は、左コントローラ3の各入力部と同様の各入力部を備える。具体的には、各ボタン113、および、アナログスティック52を備える。これらの各入力部については、左コントローラ3の各入力部と同様の機能を有し、同様に動作する。
【0068】
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
【0069】
以上に説明したように、本実施形態におけるゲームシステム1については左コントローラ3および右コントローラ4が本体装置2から着脱可能である。また、クレードルに左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置や本体装置2単体を装着することによって据置型モニタ等の外部表示装置に画像(および音声)を出力可能である。以下の説明では、ディスプレイ12に画像を表示する利用態様におけるゲームシステム1を用いて説明する。なお、ディスプレイ12に画像を表示する利用態様におけるゲームシステム1を用いる場合、左コントローラ3および右コントローラ4が本体装置2に固定された態様(例えば、本体装置2、左コントローラ3、および右コントローラ4が1つの筐体で一体化された態様)のゲームシステム1が用いられてもかまわない。
【0070】
ゲームシステム1における左コントローラ3および/または右コントローラ4の各操作ボタンやスティックの操作、あるいは本体装置2のタッチパネル13に対するタッチ操作等に応じて、ディスプレイ12に表示される仮想空間を用いたゲームプレイが行われる。本実施例では、一例として、上記操作ボタン、スティック、およびタッチパネル13を用いたユーザ操作に応じて、仮想空間内で動作するプレイヤキャラクタPCを用いたゲームプレイが可能となる。
【0071】
次に、
図8~
図18を用いて、ゲームシステム1において行われるゲーム処理の概要について説明する。本実施例では、移動元から移動先へプレイヤキャラクタPCの位置を移す遠距離移動が行われる際に表示されるローディング画面において、所定の移動演出(遠距離移動演出)が行われる。例えば、本実施例においては、ユーザの操作入力に基づいて、3次元の仮想空間であるゲームフィールド(以下、単に「フィールド」と記載する)上におけるプレイヤキャラクタPCが制御される。そして、プレイヤキャラクタPCは、プレイヤキャラクタPCの位置(移動元)から離れた移動先がユーザの操作入力に基づいて指定されることにより、プレイヤキャラクタPCの位置を移すワープ移動等の遠距離移動を行うことも可能である。本実施例において、プレイヤキャラクタPCの位置を上記移動元から上記移動先に移す遠距離移動の指示が行われた場合、少なくとも一部のゲーム処理を中断させて当該中断されたゲーム処理を再開させるまでの待機期間を開始し、当該待機期間が終了するまでの間に所定の遠距離移動演出が行われる。例えば、上記待機期間は、移動先のフィールドのデータの読み出しの処理を行うロード期間であり、当該待機期間中に表示されるローディング画面において上記遠距離移動演出が行われる。例えば、上記遠距離移動演出では、少なくとも、上記移動元周辺のフィールド情報を表す移動元のマップ画像と、当該移動元のマップ画像が表示された後に表示される上記移動先周辺のフィールド情報を表す移動先のマップ画像とが、少なくとも表示される。
【0072】
本実施例において、ゲームシステム1は、ゲームシステム1のユーザが操作可能なプレイヤキャラクタPCがフィールドを移動するゲームを実行する。ゲームシステム1は、プレイヤキャラクタPCが配置されるフィールドを示すフィールド画像を表示することに加え、フィールドのマップを示すマップ画像(フィールドマップ画像)を表示することも可能である。本実施例においては、マップ画像は、ユーザの指示によってフィールド画像から切り替えて表示される他、少なくとも一部が常にフィールド画像と共に表示される場合もある。
【0073】
本実施例においては、便宜上、仮想空間における所定高さ以上のフィールドを空フィールドとし、仮想空間における地面から所定の高さ未満となるフィールドを地上フィールドとし、仮想空間における当該地面の下のフィールドを地下フィールドとして説明する。本実施例では、地上フィールドの一部または全部が地上マップにより表され、空フィールドの一部または全部が空マップにより表され、地下フィールドの一部または全部が地下マップにより表されるが、地上フィールドと空フィールドと地下フィールドとは仮想空間内において実際に区切られていなくてもよい。プレイヤキャラクタPCは、ユーザの移動操作入力に基づいて、仮想空間内における地上フィールド、空フィールド、および地下フィールドを少なくとも移動することができる。
【0074】
次に、
図8を参照して、本実施例における遠距離移動の指示方法の一例について説明する。なお、
図8は、本実施例における遠距離移動の指示方法の一例を示す図である。
【0075】
本実施例においては、プレイヤキャラクタPCは、ユーザの操作入力に基づいて指定された移動先に、プレイヤキャラクタPCの位置を移す遠距離移動が可能である。ここで、上記移動先は、現時点におけるプレイヤキャラクタPCの位置である移動元から離れた位置であって、仮想空間において当該移動元から遠い位置(例えば、移動元を含む後述するマップ画像において表示範囲外となる位置)でもよいし、仮想空間において当該移動元にごく近い位置でもよいし、移動元のフィールドとは異なるフィールド上の位置でもよいし、仮想空間に設けられた特定の空間内となる位置でもよい。また、移動元から移動先に位置を移す移動とは、当該移動元から当該移動先への移動経路に沿った移動動作を含めた通常の連続した移動とは異なり、当該移動元から当該移動先へ瞬く間に移動するものである。なお、移動元から移動先に位置を移す移動は、当該移動元から当該移動先へ瞬時に移動してもよいし、当該移動元から当該移動先への移動において所定の時間が経過するものであってもよい。例えば、上記移動元から移動先に位置を移す移動には、ファストトラベル、ワープ移動、瞬間移動等が少なくとも含まれる。
【0076】
図8に示すように、本実施例においては、後述するようにフィールド画像が表示されるフィールドモードとマップ画像(フィールドマップ画像)を表示するマップ表示モードとを、ユーザの操作入力に応じて切り替えることが可能である。例えば、上記マップ表示モード中に表示されているマップ画像内の建造物等やプレイヤキャラクタPCが一度訪れた建造物等を、ユーザの指示操作入力に基づいて上記遠距離移動の移動先として指定することができる。例えば、
図8に示す一例では、表示されている地上マップ画像におけるエリアα内に配置されている建造物M1が上記移動先として指定されている。本実施例では、ユーザの操作入力に基づいて、マップ画像をスクロールして表示できるとともに、マップ画像によって示されるフィールドも切り替えることができ、ユーザは、表示されているマップ画像上の位置を選択して遠距離移動の移動先を指定することができる。なお、表示されるマップ画像については、後述する。
【0077】
上記移動先が指定されて遠距離移動が開始された場合、現時点におけるプレイヤキャラクタPCの位置である現在地(移動元)から当該移動先またはその周辺へプレイヤキャラクタPCの位置が自動的に(すなわち、ユーザによるプレイヤキャラクタPCの移動操作入力がなくても)移される。
【0078】
本実施例において、プレイヤキャラクタPCの位置を上記移動元から上記移動先に移す遠距離移動の指示が行われた場合、少なくとも一部のゲーム処理を中断させて待機期間を開始し、当該待機期間が終了するまでの間に所定の移動演出(遠距離移動演出)が行われる。例えば、上記待機期間は、移動先のフィールドのデータの読み出しの処理を行うロード期間であり、当該ロード処理中においては少なくとも一部のゲーム処理が中断される。本実施例において、上記待機期間において中断するゲーム処理としては、例えば、ユーザの操作入力に応じてプレイヤキャラクタPCを動作制御する処理、仮想空間において他のキャラクタやオブジェクトを動作させる処理、実行されているゲームのゲーム内時間を進めて仮想空間を更新する処理等がある。また、上記待機期間において中断されないゲーム処理としては、例えば、上記遠距離移動演出を行うための処理やデータの読み出し/読み込みを行うロード処理等がある。本実施例においては、上記ロード期間において表示されるローディング画面において、マップ表示を伴う上記遠距離移動演出が行われる。
【0079】
次に、
図9~
図13を参照して、本実施例における上記待機期間において行われる遠距離移動演出の一例について説明する。なお、
図9は、本実施例における遠距離移動演出の第1段階において表示されるゲーム画像の一例を示す図である。
図10は、本実施例における遠距離移動演出の第2段階において表示されるゲーム画像の一例を示す図である。
図11は、本実施例における遠距離移動演出の第3段階において表示されるゲーム画像の一例を示す図である。
図12は、本実施例における遠距離移動演出の第4段階において表示されるゲーム画像の一例を示す図である。
図13は、本実施例における遠距離移動演出の第5段階において表示されるゲーム画像の一例を示す図である。以下に説明する遠距離移動演出の例では、地下フィールド上の移動元から、地上フィールド上の移動先にプレイヤキャラクタPCが遠距離移動する例を用いる。
【0080】
プレイヤキャラクタPCの位置を上記移動元から上記移動先に移す遠距離移動の指示が行われた場合、上記待機期間において行われる遠距離移動演出の最初の段階において、移動先が指示されたマップ画像が表示されている状態(
図8参照)から、仮想空間画像を表示する状態に変化する。
図9の上図に示される例では、仮想空間の地下フィールド上の移動元にプレイヤキャラクタPCが配置されたゲーム画像が、プレイヤキャラクタPCの遠距離移動前の状態として表示される。
【0081】
次に、
図9の下図に示すように、仮想空間の移動元に配置されているプレイヤキャラクタPCが、当該移動元の位置からワープ開始して遠距離移動を開始するアニメーションが表示される。なお、
図9の下図において示されている破線のプレイヤキャラクタPCは、仮想空間の移動元からプレイヤキャラクタPCが消えて遠距離移動を開始した状態を示している。
【0082】
上記待機期間において行われる遠距離移動演出の次の段階において、
図10の上図に示すように、移動元を中心として当該移動元の周辺のフィールド情報を表すマップ画像が表示される。例えば、
図10の上図に示す例では、地下フィールド上の移動元を中心とする地下マップ画像が表示される。そして、表示される地下マップ画像上における移動元の位置に、プレイヤキャラクタPCが配置されていることを示す現在地Cのアイコン画像が表示される。
【0083】
次に、
図10の下図に示すように、移動元の周辺のフィールド情報を表すマップ画像が表示された後の所定のタイミングにおいて、当該マップ画像から現在地Cのアイコン画像を消去して当該マップ画像の表示が継続される。これにより、上記遠距離移動における移動元のプレイヤキャラクタPCのマップ画像上の位置と、プレイヤキャラクタPCの遠距離移動が開始されたこととを、直感的にユーザに知らせることができる。
【0084】
次に、
図11の上図に示すように、表示しているマップ画像を、上記遠距離移動において移動元から移動先に向かうプレイヤキャラクタPCの当該マップ画像上の移動方向と逆方向(
図11の上図に示すA1方向)へスライドさせて表示する。ここで、異なるフィールド間の遠距離移動が行われる場合、プレイヤキャラクタPCの移動は、フィールド面に沿った2次元的な移動ではなく、フィールドを跨ぐ3次元的な移動となる。本実施例における上記マップ画像のスライド方向は、プレイヤキャラクタPCの移動が上記3次元的な移動となる場合であっても、当該3次元的な移動が仮想空間の上方から見た2次元的な移動に置換されて決定される。これにより、上記遠距離移動によって、プレイヤキャラクタPCの位置が移動元から移されるマップ画像上の方向を、直感的にユーザに知らせることができる。
【0085】
上記待機期間において行われる遠距離移動演出の次の段階において、
図11の下図に示すように、移動先を含む当該移動先の周辺のフィールド情報を表すマップ画像が表示される。例えば、
図11の下図に示す例では、地上フィールド上の移動先(例えば、建造物M1)の周辺の地下マップ画像が表示される。なお、この時点では、表示される地上マップ画像上における移動先の位置には、プレイヤキャラクタPCが配置されていることを示す現在地Cのアイコン画像は含まれていない。また、移動先を中心とするマップ画像がスライド表示後に最終的に表示されるように、表示しているマップ画像を、上記遠距離移動において移動先に向かうプレイヤキャラクタPCの当該マップ画像上の移動方向と逆方向(
図11の下図に示すA2方向)へスライドさせて表示する。これにより、上記遠距離移動によって、プレイヤキャラクタPCの位置が移動先に移されるマップ画像上の方向を、直感的にユーザに知らせることができる。
【0086】
次に、
図12の上図に示すように、マップ画像の上記スライド表示が終了し、移動先を中心として当該移動先の周辺のフィールド情報を表すマップ画像が表示される。例えば、
図12の上図に示す例では、地上フィールド上の移動先(建造物M1)を中心とする地上マップ画像が表示される。なお、この時点でも、表示される地上マップ画像上における移動先の位置には、プレイヤキャラクタPCが配置されていることを示す現在地Cのアイコン画像は含まれていない。
【0087】
次に、移動先を中心とするマップ画像が表示された後の所定のタイミングにおいて、表示されるマップ画像上における移動先の位置に、プレイヤキャラクタPCが配置されていることを示す現在地Cのアイコン画像が出現する。これにより、上記遠距離移動における移動先のプレイヤキャラクタPCのマップ画像上の位置と、プレイヤキャラクタPCの遠距離移動が終了したこととを、直感的にユーザに知らせることができる。
【0088】
上記待機期間において行われる遠距離移動演出の次の段階において、移動先を中心とするマップ画像が表示されている状態(
図12の下図参照)から、仮想空間画像を表示する状態に変化する。
図13の上図に示される例では、プレイヤキャラクタPCが、仮想空間における地上フィールド上の建造物周辺となる移動先の位置にワープ終了して遠距離移動を終了するアニメーションが表示される。
【0089】
次に、仮想空間における移動先の位置に、ワープ終了したプレイヤキャラクタPCが配置された仮想空間画像が表示される。
図13の下図に示される例では、仮想空間の地下フィールド上の移動元の位置にプレイヤキャラクタPCが配置されたゲーム画像が、プレイヤキャラクタPCの遠距離移動後の状態として表示される。
【0090】
上記遠距離移動演出における各段階が行われるタイミングは、経過時間および/またはロードの進捗度に基づいて制御されてもよい。例えば、上記遠距離移動演出において、移動元の周辺のフィールド情報を表すマップ画像は、少なくとも第1の期間継続して表示され、当該第1の期間終了後に第2の期間の経過またはロードの進捗度が所定の度合いに達したことに応じて、移動先の周辺のフィールド情報を表すマップ画像の表示が開始されてもよい。これによって、少なくとも移動元の周辺のフィールド情報を表すマップ画像の表示のために所定時間が確保されるとともに、その後の時間経過とロードの進捗との早い方に応じて、移動先の周辺のフィールド情報を表すマップ画像の表示が開始されるため、より重要な移動先情報を上記待機期間の早い段階で表示することができる。一例として、移動元の周辺のフィールド情報を表すマップ画像が表示されてから、1秒以上経過、かつ、3秒以上経過またはロードの進捗度が20%を超えた場合、移動先の周辺のフィールド情報を表すマップ画像の表示を開始してもよい。これによって、遠距離移動における移動元の周辺のフィールド情報を表すマップ画像の表示が、少なくとも1秒間以上確保されるため、当該遠距離移動前にプレイヤキャラクタPCが配置されていたマップ画像が見逃されることを防止することができる。また、経過時間が3秒以上またはロードの進捗度が20%を超えた場合に移動先の周辺のフィールド情報を表すマップ画像が表示されるため、重要度が高い上記遠距離移動後の移動先周辺のマップ画像を相対的に長く表示することができる。
【0091】
なお、経過時間および/またはロードの進捗度に基づいて制御される上記遠距離移動演出における各段階が行われるタイミングは、マップ画像の表示開始/表示終了タイミングに限らず、他の演出が行われる/他の演出が終了するタイミングであってもよい。例えば、プレイヤキャラクタPCがワープ開始するアニメーションを開始/終了するタイミング、現在地Cを示すアイコン画像が消去/出現するタイミング、プレイヤキャラクタPCがワープ終了するアニメーションを開始/終了するタイミング等が上記経過時間および/またはロードの進捗度に基づいて制御されてもよい。
【0092】
また、上記経過時間のカウントを開始するタイミングは、移動元の周辺のフィールド情報を表すマップ画像が表示されたことを契機とする他、上記遠距離移動演出が開始されたこと(すなわち、プレイヤキャラクタPCが移動元の位置からワープ開始するアニメーションが開始されたこと)、移動元を示す現在地Cのアイコン画像が消去されたこと等を契機としてもかまわない。
【0093】
また、上記待機期間は、移動先のフィールドのデータの読み出しの処理を行うロード期間より長い期間であってもかまわない。例えば、上記ロード期間が早期に終了したとしても、当該終了後も遠距離移動演出や他の処理を行うための時間として上記待機期間が設けられてもよい。
【0094】
また、上記待機期間において行われる遠距離移動演出の内容は、上述した一部の演出が行われなくてもよいし、他の演出が加えられてもよい。例えば、ゲーム画像がスライドして表示される演出、現在地Cを示すアイコン画像が消去/出現する演出、またはプレイヤキャラクタPCがワープ開始/ワープ終了する演出が、上記遠距離移動演出において行われなくてもよい。また、上記遠距離移動演出において、ユーザの操作入力に基づいた演出が行われてもよい。一例として、上記遠距離移動演出中に表示されるゲーム画像に重畳して、ゲームのヒント、コツ、アドバイス等をユーザに伝えるTipsが表示され、当該Tipsの内容がユーザの操作入力に基づいて更新されて重畳表示される演出が行われてもよい。
【0095】
また、本実施例における遠距離移動は、移動元のフィールドと移動先のフィールドとが同じフィールドであってもよいし、異なるフィールドであってもよい。後者の場合、移動元のフィールドと移動先のフィールドとが隣接するフィールドであってもよいし、隣接していないフィールド(例えば、空フィールドから地下フィールドへの遠距離移動)であってもよい。
【0096】
また、本実施例においては、仮想空間において、上述した地上フィールド、空フィールド、および地下フィールドの3層のフィールドに限られず、4層以上のフィールドや2層以下のフィールドにプレイヤキャラクタPCが移動可能であってもよい。また、上述した地上フィールド、空フィールド、および地下フィールドに限らず、異なる態様のフィールドが積層された複数層のフィールドにより、仮想空間が構成されてもよい。第1の例として、本実施例における地上フィールドは、海面上の海上フィールドを含む概念であってもよく、仮想空間が海上フィールドおよび空フィールドを含む2層以上のフィールドによって構成される場合であってもよい。第2の例として、本実施例における空上フィールドは、仮想空間における宇宙(大気圏外の空間)を含んでもよく、仮想空間が地上フィールドおよび宇宙を含む空フィールドによる2層以上のフィールドによって構成される場合であってもよい。第3の例として、仮想空間における海面下の海中フィールドと海面上の海上フィールドとが少なくとも含まれる仮想空間が構成されていてもよい。第4の例として、空フィールドが低空フィールドと高空フィールドとに分けられた仮想空間が構成されてもよい。このように、様々な態様のフィールドが構成された仮想空間を用いたゲームであっても、同様に上述したマップ画像の表示や遠距離移動における遠距離移動演出を行うことができる。
【0097】
次に、
図14~
図18を参照して、本実施例において用いられるマップ画像について説明する。本実施例では、マップ画像には、フィールド情報が未開放のエリアとフィールド情報が解放済みのエリアとが設定され、それぞれ異なる態様で表示される。例えば、フィールド情報は、仮想空間おけるフィールドに関する情報であり、例えば、フィールドを形成する地形の情報(具体的には、地形の形状等)、フィールドに設置されているオブジェクトの情報、フィールドに配置されているアイテムの情報、あるいは、フィールド上に存在するキャラクタの情報等である。マップ画像におけるフィールド情報が解放される前のエリアは、当該エリア内のフィールド情報が示されない態様で表示される。例えば、プレイヤキャラクタPCが仮想空間における特定位置において所定の動作を行った場合、特定位置周辺のエリアにおけるマップ画像のフィールド情報が解放される。
【0098】
図14を参照して、マップ画像のフィールド情報を解放する際のゲーム処理について説明する。なお、
図14は、マップ画像のフィールド情報を解放する処理が行われる際に表示されるゲーム画像の例を示す図である。
【0099】
図14において、仮想空間における特定位置に、プレイヤキャラクタPCが位置している画像が表示されている。ここで、本実施例においては、フィールドには複数の特定位置が設定される。特定位置は、プレイヤキャラクタPCが当該特定位置またはその近傍に位置する状態でユーザによる所定の操作入力(例えば、特定位置を調べる動作をプレイヤキャラクタPCに行わせるためのユーザの操作入力)が行われたことに応じて、特定位置周辺のエリアにおけるフィールド情報が解放される。つまり、プレイヤキャラクタPCは、特定位置に到達して所定の動作(例えば、特定位置周辺を調べる動作)を行うことで、当該特定位置周辺のエリアのフィールド情報が解放されたマップ画像を表示することができる。本実施例では、プレイヤキャラクタPCが特定位置において所定の動作を行った場合、特定位置周辺のエリアのフィールド情報が解放される解放イベントが行われる。一例として、解放イベントは、解放対象エリアのフィールド情報が解放されたことを示す演出であり、当該解放対象エリアのフィールド情報が未開放のマップ画像が表示された後に、当該解放対象エリアのフィールド情報が開放されたマップ画像を表示して、当該解放対象エリアのフィールド情報が解放されたことをユーザに報知する演出が行われる。なお、特定位置は、例えば、プレイヤキャラクタPCが上記遠距離移動する移動元および/または移動先として指定できたり、プレイヤキャラクタPCを回復することができたり、プレイヤキャラクタPCの装備やスキルや所持アイテムを変更することができたりする場所であってもよい。
【0100】
各フィールドのマップ画像は、それぞれ複数のエリアが設けられる。なお、各エリアは、フィールドが区切られることによって予め形成されていてもよいし、解放するプレイヤキャラクタPCの動作に応じた形状(例えば、動作に応じたサイズの円形状)で当該動作毎に形成されてもよい。そして、マップ画像は、エリア毎に、所定のフィールド情報を含む第1状態のマップ画像(例えば、詳細なフィールド情報が表示されるエリアのマップ画像)または当該所定のフィールド情報を含まない第2状態のマップ画像(例えば、詳細なフィールド情報が表示されないエリアのマップ画像)により構成される。そして、プレイヤキャラクタPCがフィールド情報を解放する動作を行うことにより、当該動作が行われたエリアのマップ画像を第2状態から第1状態に変化させることができる。エリアのフィールド情報が解放される前におけるマップ画像は、少なくとも一部のフィールド情報が示されない態様で表示されればよく、他の一部のフィールド情報が解放前において示されていてもよい。このように、エリアのフィールド情報が解放されると、マップ画像における当該エリアについてフィールド情報が表示されるようになる。これによって、ユーザは、フィールド情報が解放されたエリアの探索をプレイヤキャラクタPCに行わせやすくなる。
【0101】
次に、
図15~
図17を参照して、上記フィールド情報の解放前後のマップ画像の変化例について説明する。なお、
図15は、全エリアのフィールド情報が解放されていない地上マップ画像の一例とエリアαのフィールド情報が解放された地上マップ画像の一例とを示す図である。
図16は、全エリアのフィールド情報が解放されていない空マップ画像の一例とエリアβのフィールド情報が解放された空マップ画像の一例とを示す図である。
図17は、全エリアのフィールド情報が解放されていない地下マップ画像の一例とエリアγのフィールド情報が解放された地下マップ画像の一例とを示す図である。
【0102】
図15の下図には、フィールド情報が解放済のエリアαと未解放の他のエリアとによって構成された地上マップ画像の一例が表示されている。エリアαは、地上フィールドが予め区切られた複数のエリアの1つとして形成され、地上マップ画像におけるエリアα全体には、詳細なフィールド情報が記述される。例えば、フィールド情報の解放により地上エリアに記述される詳細なフィールド情報は、当該地上エリア内の海、湖、池、川、山、丘、森林、平原等の名称、形状、等高線等の地形情報や、当該地上エリア内に対応する地上フィールドに設けられている道、橋、建造物等の名称、形状、設置位置等の造設/築造情報等を含んでいる。一例として、
図15に示す地上マップ画像では、エリアαに対応する地上フィールドに造られている道や建造物M1~M5が記述され、それぞれの形状、種別、位置等が示されている。また、表示される地上マップ画像には、プレイヤキャラクタPCが現時点において位置している現在地Cが示されている。上記地上マップ画像における他のエリアは、フィールド情報が未解放であり、エリアαのような詳細なフィールド情報が記述されていない。本実施例では、フィールド情報が未解放となっている地上エリアについては、その全域においてフィールド情報が全く記述されない、または一部の情報のみが部分的に記述される。例えば、
図15の下図の例では、プレイヤキャラクタPCが現時点までに訪れたことがある地上フィールドの建造物等の造設/築造情報のみ(
図15の下図に示す建造物M6~M9に関する情報)が記述されている。
【0103】
図15の上図には、
図15の下図に示したエリアαのフィールド情報も未解放、すなわち表示されている地上エリア全てのフィールド情報が未解放状態となっている地上マップ画像の一例が表示されている。
図15の上図に示すように、フィールド情報が解放される前のエリアαは、一部の情報のみが部分的に記述されている。具体的には、
図15の上図の例では、エリアαのフィールド情報が解放される前に、プレイヤキャラクタPCが現時点までに訪れたことがあるエリアα内に対応する地上フィールドの建造物等の造設/築造情報のみ(
図15の上図に示す建造物M1およびM4に関する情報)が記述されている。
【0104】
図15の上図および下図を比較すれば明らかなように、フィールド情報が解放される前のエリアαの地上マップ画像は、解放後より記述されるフィールド情報が著しく少なく、フィールド情報が記述される領域がエリアα全域に対して部分的となる。なお、フィールド情報が解放されているか否かに関わらず、表示される地上マップ画像には、プレイヤキャラクタPCの現在地Cが示される。
図15に示す例では、何れの図もプレイヤキャラクタPCが地上フィールドに位置している状態で地上マップ画像が表示された状態を示しているため、地上マップ上の位置に対応する地上フィールドにプレイヤキャラクタPCが位置していることを示す標識(例えば、黒塗りつぶしマーク)で現在地Cがそれぞれ記述されている。
【0105】
図16の下図には、フィールド情報が解放済のエリアβと未解放の他のエリアとによって構成された空マップ画像の一例が表示されている。エリアβは、地上エリアと同様に、空フィールドが予め区切られた複数のエリアの1つとして形成され、空マップ画像におけるエリアβ全体には、詳細なフィールド情報が記述される。例えば、フィールド情報の解放により空エリアに記述される詳細なフィールド情報は、当該空エリアに対応する空フィールドに浮かぶ空フィールドオブジェクト等の名称、形状、位置等の情報等を含んでいる。一例として、
図16に示す空マップ画像では、エリアβ内に対応する空フィールドに浮かぶ空フィールドオブジェクトM11~M13が記述され、それぞれの形状、種別、位置等が示されている。また、表示される空マップ画像には、プレイヤキャラクタPCが現時点において位置している現在地Cが示されている。上記空マップ画像における他のエリアは、フィールド情報が未解放であり、エリアβのような詳細なフィールド情報が記述されない。本実施例では、フィールド情報が未解放となっている空エリアについては、その全域においてフィールド情報が全く記述されない、または一部の情報のみが部分的に記述される。例えば、
図16の下図の例では、エリアβ以外のエリアにおいてフィールド情報が全く記述されていない。
【0106】
なお、一例として、地上フィールドが複数に区切られた地上エリアと、空フィールドが複数に区切られた空エリアとは、互いに仮想空間における上下に配置された同じ形状のフィールド領域を示すものであってもよい。この場合、ある地上エリアに対応する地上フィールドの上空は、全て同じ空エリアに対応する空フィールドとなり、互いに同じ形状のエリアとして地上マップ画像および空マップ画像において表現されることになる。他の例として、地上エリアと空エリアとは、異なる形状によって形成されてもよい。
【0107】
図16の上図には、
図16の下図に示したエリアβのフィールド情報も未解放、すなわち表示されている空エリア全てのフィールド情報が未解放状態となっている空マップ画像の一例が表示されている。
図16の上図に示すように、フィールド情報が解放される前のエリアβは、フィールド情報が全く記述されていない。
【0108】
図16の上図および下図を比較すれば明らかなように、フィールド情報が解放される前のエリアβの空マップ画像は、解放後より記述されるフィールド情報が著しく少なくなる。なお、フィールド情報が解放されているか否かに関わらず、表示される空マップ画像には、プレイヤキャラクタPCの現在地Cが示される。
図16に示す例では、何れの図もプレイヤキャラクタPCが空フィールドに位置している状態で空マップ画像が表示された状態を示しているため、空マップ上の位置に対応する空フィールドにプレイヤキャラクタPCが位置していることを示す標識(例えば、黒塗りつぶしマーク)で現在地Cがそれぞれ記述されている。
【0109】
図17の下図には、フィールド情報が解放済のエリアγと未解放の他のエリアとによって構成された地下マップ画像の一例が表示されている。エリアγは、解放するプレイヤキャラクタPCの動作に応じた円形状領域として形成され、地下マップ画像におけるエリアγ全体には、詳細なフィールド情報が記述される。例えば、フィールド情報の解放により地下エリアに記述される詳細なフィールド情報は、当該地下エリア内の海、湖、池、川、山、丘、森林、平原等の名称、形状、等高線等の地形情報や、当該地下エリア内に対応する地下フィールドに設けられている道、橋、建造物等の名称、形状、設置位置等の造設/築造情報等を含んでいる。一例として、
図17に示す地下マップ画像では、エリアγ内に対応する地下フィールドに造られている地形や建造物M20が記述され、それぞれの形状、種別、位置等が示されている。また、表示される地下マップ画像には、プレイヤキャラクタPCが現時点において位置している現在地Cが示されている。上記地下マップ画像におけるエリアγ以外の領域は、フィールド情報が未解放であり、エリアγのような詳細なフィールド情報が記述されない。本実施例では、フィールド情報が未解放となっている地下エリアについては、その全域においてフィールド情報が全く記述されない、または一部の情報のみが部分的に記述される。例えば、
図17の下図の例では、エリアγ以外のエリアにおいてフィールド情報が全く記述されていない。
【0110】
図17の上図には、
図17の下図に示したエリアγのフィールド情報も未解放、すなわち表示されている地下エリア全てのフィールド情報が未解放状態となっている地下マップ画像の一例が表示されている。
図17の上図に示すように、フィールド情報が解放される前のエリアγは、フィールド情報が全く記述されていない。
【0111】
図17の上図および下図を比較すれば明らかなように、フィールド情報が解放される前のエリアγの地下マップ画像は、解放後より記述されるフィールド情報が著しく少なくなる。なお、フィールド情報が解放されているか否かに関わらず、表示される地下マップ画像には、プレイヤキャラクタPCの現在地Cが示される。
図17に示す例では、何れの図もプレイヤキャラクタPCが地下フィールドに位置している状態で地下マップ画像が表示された状態を示しているため、地下マップ上の位置に対応する地下フィールドにプレイヤキャラクタPCが位置していることを示す標識(例えば、黒塗りつぶしマーク)で現在地Cがそれぞれ記述されている。
【0112】
次に、
図18を参照して、本実施例におけるマップ画像の生成方法の一例について説明する。なお、
図18は、本実施例におけるマップ画像の生成方法の一例を示す図である。本実施例においては、ゲームシステム1は、元マップ画像とマップマスクとに基づいて、表示されるマップ画像を生成する。
【0113】
元マップ画像は、表示されるマップ画像を生成する元となる画像であり、表示可能な全てのフィールド情報が含まれるマップ画像を示す。元マップ画像は、フィールド全体がフィールド情報の解放領域となる場合におけるマップ画像であると言うことができる。
【0114】
マップマスクは、上記のフィールド情報を解放するエリアを示すデータである。すなわち、マップマスクは、フィールドのうちでフィールド情報を解放するエリアとなっている領域を示す2次元データである。そして、ゲームシステム1は、解放エリアについてフィールド情報が示されるマップ画像を、マップマスクを用いて生成する。
【0115】
本実施例において、マップマスクのデータは、2次元の各位置についてのマップマスク値を示すデータである。マップマスク値とは、マップ画像の生成のために元マップ画像を反映させる度合いを示す。例えば、マップマスク値は最大値が1で、最小値が0となる値である。このとき、マップマスク値が1である画素(
図18に示すマップマスクにおいて白色で示される領域)では、元マップ画像がそのままマップ画像に反映され、マップマスク値が0である画素(
図18に示すマップマスクにおいて黒色で示される領域)では、元マップ画像が反映されないようにマップ画像が生成される。一例として、マップマスク値は0または1の2値の値である。他の例として、マップマスク値は、0から1までの範囲の多値の値である。マップマスク値を多値の値として、解放エリアの境界付近の画素(
図18に示すマップマスクにおいて灰色で示される領域)のマップマスク値を中間値(すなわち、0より大きく1未満である値)とすることにより、解放エリアの境界付近においてマップ画像をぼかして表示することができる。
【0116】
ゲームシステム1は、マップマスクを参照して、画素ごとのマップマスク値に応じた比率で、元マップ画像と未解放状態を示す画像とを合成することで、マップ画像を生成する。具体的には、ゲームシステム1は、マップマスク値が1である画素については元マップ画像がそのまま反映され、マップマスク値が0である画素については元マップ画像が反映されず、マップマスク値が中間値である画素についてはマップマスク値に応じた比率で元マップ画像が反映されるように、マップ画像を生成する。未解放状態を示す画像は、単色でもよいし、所定の模様等が描画されていてもよい。合成されたマップ画像に、さらに座標を分かり易くするための格子等が合成されてもよい。これによって、マップ画像は、解放エリア内のうちの境界付近(具体的には、マップマスク値が中間値となる位置)では、薄く表示される(
図18参照)。なお、
図18では、マップ画像のうち薄く表示される部分を点線で示している。
【0117】
ゲームシステム1は、プレイヤキャラクタPCがフィールド情報を解放する動作を行った場合、当該動作により解放するエリアを示す2次元のマスクデータ(すなわち、マップマスク)を生成して更新する。また、ゲームシステム1は、フィールド情報を含む元マップ画像に更新されたマスクデータを適用することによって、解放エリアに対応する部分のフィールド情報が示されたマップ画像を生成する。これにより、解放エリアの部分を示すマップ画像を容易に生成することができる。なお、他の実施例においては、マップ画像の具体的な生成方法は任意であり、マスクデータを用いた方法に限定されない。
【0118】
本実施例において、ユーザの操作入力に応じたプレイヤキャラクタPCの動作制御が可能なゲームプレイ中(すなわち、フィールドモードによるゲームプレイ中)において、ユーザが所望する任意のタイミングでマップ表示モードに移行してマップ画像を表示することができる。例えば、上記ゲームプレイ中において、ユーザによる所定の指示操作入力(例えば、左コントローラ3の-ボタン47を押下するマップ表示切替操作入力)が行われたことに応じて、ゲームモードがフィールドモードからマップ表示モードに移行して上述したプレイヤキャラクタPCが位置するエリアに対応する地上マップ、空マップ、および地下マップの少なくとも何れかのマップ画像が表示される。上記マップ画像の表示において表示される地上マップ画像、空マップ画像、および地下マップ画像は、フィールド情報が解放済のエリアには所定のフィールド情報が含まれた状態(例えば、詳細なフィールド情報が記述された状態)で、フィールド情報が未解放のエリアには所定のフィールド情報が含まれない状態(例えば、詳細なフィールド情報が記述されていない状態)で表示される。
【0119】
上記マップ画像の表示においては、ユーザによる地上マップ、空マップ、および地下マップを切り替える操作入力(例えば、左コントローラ3の上ボタン35または下ボタン34を押下するマップ切替操作入力)に応じて、表示するマップ画像を切り替えることができる。例えば、
図15~
図17に例示したマップ画像においては、選択可能なフィールドと表示中のフィールドとを示すフィールド指示画像が左側領域に表示されており、白抜き領域により表示されているマップ名称が表示中のフィールドを示している。なお、上記フィールド指示画像は、文字情報によりフィールド(階層)が示されてもよいし、アイコン等の画像によりフィールド(階層)が示されてもよい。
【0120】
なお、上記遠距離移動の移動先は、ユーザの指示操作入力により指定された上記建造物に限られず、仮想空間におけるフィールドにおける解放済みエリア内で指定された任意の位置でもよい。これによって、フィールド情報が解放されたフィールド上のエリアへは、プレイヤキャラクタPCがどの場所に位置していても、ユーザによって指定された位置またはその周辺へ短時間で遠距離移動することができ、フィールド探索が容易となる。なお、他の実施例においては、上記移動先は、仮想空間におけるフィールドにおいて、フィールド情報が未解放となったエリア内で、ユーザの指示操作入力により指定された任意の位置であってもかまわない。
【0121】
また、本実施例における遠距離移動演出において表示されるマップ画像は、プレイヤキャラクタPCが仮想空間内の所定位置において所定の解放イベントを発生させることにより解放されたフィールド情報に基づいて生成されたマップ画像(フィールドマップ画像)の一部をキャプチャしたものが用いられてもよい。すなわち、ゲームプレイ中において、ユーザによる所定の指示操作入力が行われたことに応じてマップ表示モードに移行してマップ画像(フィールドマップ画像)が一度生成され、以降はその一部をキャプチャして記憶されたものが、上記遠距離移動演出で用いられてもよい。これにより、上記遠距離移動演出に用いられるマップ画像の生成の処理負荷が大きい場合に、既に生成されているフィールドマップ画像の一部をキャプチャして表示させることでマップ画像生成の処理負荷を軽減させることができる。特に、上記遠距離移動演出が行われる待機期間中は、ロード中であることもありマップ画像の生成による処理負荷を軽減することによって大きな効果を期待することができる。
【0122】
次に、
図19を参照して、ゲームシステム1で実行される具体的な処理の一例について説明する。
図19は、本体装置2のDRAM85に設定されるデータ領域の一例を示す図である。なお、DRAM85には、
図19に示すデータの他、他の処理で用いられるデータも記憶されるが、詳細な説明を省略する。
【0123】
DRAM85のプログラム記憶領域には、ゲームシステム1で実行される各種プログラムPaが記憶される。本実施例においては、各種プログラムPaは、左コントローラ3および/または右コントローラ4や本体装置2から取得したデータに基づいた情報処理を行うためのアプリケーションプログラム(例えば、ゲームプログラム)等が記憶される。なお、各種プログラムPaは、フラッシュメモリ84に予め記憶されていてもよいし、ゲームシステム1に着脱可能な記憶媒体(例えば、スロット23に装着された所定の種類の記憶媒体)から取得されてDRAM85に記憶されてもよいし、インターネット等のネットワークを介して他の装置から取得されてDRAM85に記憶されてもよい。プロセッサ81は、DRAM85に記憶された各種プログラムPaを実行する。
【0124】
また、DRAM85のデータ記憶領域には、ゲームシステム1において実行される情報処理等の処理において用いられる各種のデータが記憶される。本実施例においては、DRAM85には、操作データDa、プレイヤキャラクタデータDb、仮想カメラデータDc、未解放マップデータDd、解放済マップデータDe、解放状況データDf、マップマスクデータDg、フィールドデータDh、および画像データDi等が記憶される。
【0125】
操作データDaは、左コントローラ3および/または右コントローラ4や本体装置2からそれぞれ適宜取得した操作データである。上述したように、左コントローラ3および/または右コントローラ4や本体装置2からそれぞれ取得される操作データには、各入力部(具体的には、各ボタン、アナログスティック、タッチパネル)からの入力に関する情報(具体的には、操作に関する情報)が含まれている。本実施例では、左コントローラ3および/または右コントローラ4や本体装置2からそれぞれ操作データを取得しており、当該取得した操作データを用いて操作データDaが適宜更新される。なお、操作データDaの更新周期は、後述するゲームシステム1で実行される処理の周期である1フレーム毎に更新されてもよいし、上記操作データが取得される周期毎に更新されてもよい。
【0126】
プレイヤキャラクタデータDbは、仮想空間に位置しているプレイヤキャラクタPCの位置、方向、および姿勢や、仮想空間における動作や状態等を示すデータである。
【0127】
仮想カメラデータDcは、仮想空間に配置されている仮想カメラの位置、方向、画角等を示すデータである。
【0128】
未解放マップデータDdは、フィールド情報が未解放の地上マップ画像、空マップ画像、および地下マップ画像をそれぞれ示すデータである。解放済マップデータDeは、フィールド情報が解放済の地上マップ画像、空マップ画像、および地下マップ画像をそれぞれ示すデータである。
【0129】
解放状況データDfは、地上フィールド、空フィールド、および地下マップそれぞれにおける各エリアのフィールド情報の解放状況を示すデータである。
【0130】
マップマスクデータDgは、各フィールドにおいてフィールド情報を解放するエリアを示すデータである。
【0131】
フィールドデータDhは、ロード処理によって読み出されたプレイヤキャラクタPCが移動するエリアにおけるフィールドに関する情報(フィールド情報、マップ情報等)を示すデータである。
【0132】
画像データDiは、表示画面(例えば、本体装置2のディスプレイ12)に画像(例えば、プレイヤキャラクタPCの画像、他のキャラクタの画像、仮想オブジェクトの画像、仮想空間のフィールドの画像、マップ画像、背景画像等)を表示するためのデータである。
【0133】
次に、
図20~
図23を参照して、本実施例における情報処理の一例であるゲーム処理の詳細な一例を説明する。
図20は、ゲームシステム1で実行されるゲーム処理の一例を示すフローチャートである。
図21は、
図20におけるステップS126のマップ表示処理の一例を示すサブルーチンである。
図22は、
図20におけるステップS128の遠距離移動演出処理の一例を示すサブルーチンである。
図23は、
図20におけるステップS129のプレイヤ関連制御処理の一例を示すサブルーチンである。本実施例においては、
図20~
図23に示す一連の処理は、プロセッサ81が各種プログラムPaに含まれる所定のアプリケーションプログラム(ゲームプログラム)を実行することによって行われる。また、
図20~
図23に示すゲーム処理が開始されるタイミングは任意である。
【0134】
なお、
図20~
図23に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて(または代えて)別の処理が実行されてもよい。また、本実施例では、上記フローチャートの各ステップの処理をプロセッサ81が実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を、プロセッサ81以外のプロセッサや専用回路が実行するようにしてもよい。また、本体装置2において実行される処理の一部は、本体装置2と通信可能な他の情報処理装置(例えば、本体装置2とネットワークを介して通信可能なサーバ)によって実行されてもよい。すなわち、
図20~
図23に示す各処理は、本体装置2を含む複数の情報処理装置が協働することによって実行されてもよい。
【0135】
図20において、プロセッサ81は、ゲーム処理における初期設定を行い(ステップS121)、次のステップに処理を進める。例えば、上記初期設定では、プロセッサ81は、以下に説明する処理を行うためのパラメータを初期化して、各データを更新する。一例として、プロセッサ81は、仮想空間の地上フィールド、空フィールド、および地下フィールドに仮想オブジェクトや他のキャラクタ等を配置することによって初期状態の仮想空間を生成する。そして、プロセッサ81は、初期状態の仮想空間におけるデフォルト位置に所定の姿勢のプレイヤキャラクタPCおよび仮想カメラを配置して、プレイヤキャラクタデータDbおよび仮想カメラデータDcを更新する。また、プロセッサ81は、仮想空間の地上フィールド、空フィールド、および地下フィールドにおける各エリアのフィールド情報の解放状況(例えば、ゲームを最初に始める時点では全エリアを未解放に設定し、ゲームを途中から再開する場合はセーブデータ等に基づいてゲーム中断前の解放状況に設定する)に応じて、解放状況データDfを更新する。
【0136】
次に、プロセッサ81は、左コントローラ3、右コントローラ4、および/または本体装置2から操作データを取得して操作データDaを更新し(ステップS122)、次のステップに処理を進める。
【0137】
次に、プロセッサ81は、解放イベントのイベントシーンの実行中であるか否かを判定する(ステップS123)。例えば、プロセッサ81は、解放イベントが発生したことに応じて、解放イベントを示すイベントシーンのアニメーションの再生を開始する(後述するステップS196参照)。プロセッサ81は、上記イベントシーンのアニメーションが再生中である場合、上記ステップS123において肯定判定する。そして、プロセッサ81は、解放イベントのイベントシーンの実行中である場合、ステップS124に処理を進める。一方、プロセッサ81は、解放イベントのイベントシーンの実行中でない場合、ステップS125に処理を進める。
【0138】
ステップS124において、プロセッサ81は、実行中のイベントシーンを進行させて、ステップS130に処理を進める。すなわち、プロセッサ81は、上記イベントシーンのアニメーションの画像をディスプレイ12に表示させる。なお、1回のステップS124は、1フレーム分の画像が表示され、イベントシーンの実行中においてはステップS124の処理が繰り返し実行されることで、上記のアニメーションが再生されることとなる。イベント時の描画処理については、フィールド画像が表示されているフィールドモード中と同様の処理が実行される場合もあるが、異なる場面を表現する場合において異なる描画処理が行われてもよい。この異なる描画処理の具体的な内容は任意であり、詳細は省略する。
【0139】
ステップS125において、プロセッサ81は、マップ画像(フィールドマップ画像)を表示するマップ表示モード中であるか否かを判定する。本実施例においては、フィールド画像が表示されているフィールドモード中においてユーザによるマップ表示操作入力が行われることに応じて、マップ表示モードが開始される(後述するステップS192参照)。そして、プロセッサ81は、マップ表示モード中である場合、ステップS126に処理を進める。一方、プロセッサ81は、マップ表示モード中でない場合、ステップS127に処理を進める。
【0140】
ステップS126において、プロセッサ81は、マップ画像をディスプレイ12に表示するマップ表示処理を行い、ステップS130に処理を進める。以下、
図21を参照して、上記ステップS125において行われるマップ表示処理について説明する。
【0141】
図21において、プロセッサ81は、マップ画像を生成してディスプレイ12に表示し(ステップS141)、次のステップに処理を進める。ステップS141においては(すなわち、マップ表示モードにおいては)、フィールド画像は表示されずにマップ画像がディスプレイ12の全領域に表示される(
図15~
図17参照)。例えば、プロセッサ81は、マップ表示モードに移行したデフォルト状態において、上述した方法に従ってプレイヤキャラクタPCが位置するフィールドのマップ画像を生成し、ユーザの指定位置を示すカーソル画像をデフォルト位置に重畳表示して生成されたマップ画像をディスプレイ12に表示させる。また、プロセッサ81は、後述する処理において表示するマップ画像のフィールドが切り替えられた場合、上述した方法に従って当該切り替えられたフィールドのマップ画像を生成し、生成されたマップ画像をディスプレイ12に表示させる。また、プロセッサ81は、後述する処理においてカーソル画像の位置が移動した場合、当該移動後のカーソル位置にカーソル画像を重畳表示したマップ画像をディスプレイ12に表示させる。
【0142】
次に、プロセッサ81は、マップ画像を表示するフィールドを切り替える操作が行われたか否かを判定する(ステップS142)。例えば、プロセッサ81は、マップ画像を表示するフィールドを切り替える操作入力(例えば、左コントローラ3の上ボタン35または下ボタン34を押下するマップ切替操作入力)を操作データDaが示す場合、上記ステップS142において肯定判定する。そして、プロセッサ81は、マップを切り替える操作が行われた場合、ステップS143に処理を進める。一方、プロセッサ81は、マップを切り替える操作が行われていない場合、ステップS146に処理を進める。
【0143】
ステップS143において、プロセッサ81は、表示するマップ画像のフィールドを切り替える処理を行い、ステップS146に処理を進める。例えば、プロセッサ81は、上記マップを切り替える操作入力に応じて表示対象となるマップ画像を切り替えて設定する。
【0144】
ステップS144において、プロセッサ81は、ユーザの指定位置を示すカーソル画像の位置を移動させる操作が行われたか否かを判定する。例えば、プロセッサ81は、カーソル画像を移動させる操作入力(例えば、左スティック32または右スティック52を傾倒するカーソル移動操作入力)を操作データDaが示す場合、上記ステップS144において肯定判定する。そして、プロセッサ81は、カーソル画像を移動する操作が行われた場合、ステップS145に処理を進める。一方、プロセッサ81は、カーソル画像を移動する操作が行われていない場合、ステップS146に処理を進める。
【0145】
ステップS145において、プロセッサ81は、表示するカーソル画像を移動させる処理を行い、ステップS146に処理を進める。例えば、プロセッサ81は、上記カーソル移動操作入力に応じてマップ画像上のカーソル位置を移動させて設定する。なお、プロセッサ81は、上記カーソル移動操作入力が、マップ画像の表示範囲外へカーソル位置が移動させる指示を示している場合、当該指示に応じてマップ画像をスクロールさせて、上記ステップS141におけるマップ画像の表示範囲を移動させてもよい。一例として、プロセッサ81は、上記カーソル移動操作入力が示す方向(例えば、左スティック32または右スティック52を傾倒する向き)とは逆方向に、上記カーソル移動操作入力が示す移動速度(例えば、左スティック32または右スティック52を傾倒する角度)でマップ画像をスクロールさせて、当該方向に対応するマップ画像の表示範囲の端に重畳する位置にカーソル位置を設定してもよい。
【0146】
ステップS146において、プロセッサ81は、プレイヤキャラクタPCを遠距離移動させるか否かを判定する。例えば、プロセッサ81は、操作データDaが示すユーザの指示操作入力が、表示されているマップ画像内の位置を遠距離移動の移動先として指定する操作を示している場合、上記ステップS146において肯定判定する。そして、プロセッサ81は、プレイヤキャラクタPCを遠距離移動させる場合、ステップS147に処理を進める。一方、プロセッサ81は、プレイヤキャラクタPCを遠距離移動させない場合、ステップS149に処理を進める。
【0147】
ステップS147において、プロセッサ81は、遠距離移動における移動先を設定して、次のステップに処理を進める。例えば、上述したように、プロセッサ81は、ユーザの上記カーソル移動操作入力によって設定されたカーソル画像と重畳するマップ画像内の位置(例えば、フィールド情報が解放済のエリア内の建造物等やプレイヤキャラクタPCが一度訪れた建造物等)を、遠距離移動の移動先として指定する。
【0148】
次に、プロセッサ81は、プレイヤキャラクタPCを遠距離移動させる遠距離移動演出を開始し、処理モードをフィールドモードに移行して(ステップS148)、ステップS149に処理を進める。例えば、プロセッサ81は、プレイヤキャラクタPCが配置されている仮想空間における位置を移動元として、上記ステップS147において設定された移動先にプレイヤキャラクタPCを遠距離移動させる遠距離移動演出を開始する。また、上記ステップS148において、プロセッサ81は、上記ステップS147において設定された移動先のフィールドのデータの読み出しの処理を行うロード処理を開始して、上述した待機期間を開始する。
【0149】
ステップS149において、マップ表示を終了する操作が行われたか否かを判定する。例えば、プロセッサ81は、マップ表示を終了するためのユーザ操作入力を操作データDaが示す場合、上記ステップS149において肯定判定する。そして、プロセッサ81は、マップ表示を終了する操作が行われた場合、ステップS150に処理を進める。一方、プロセッサ81は、マップ表示を終了する操作が行われていない場合、当該サブルーチンによる処理を終了する。
【0150】
ステップS150において、プロセッサ81は、マップ表示を終了し、処理モードをフィールドモードに移行して、当該サブルーチンによる処理を終了する。この場合、次に実行される上記ステップS125における判定が否定判定となる。
【0151】
図20に戻り、上記ステップS125においてマップ表示モード中でないと判定された場合、プロセッサ81は、遠距離移動演出中か否かを判定する(ステップS127)。例えば、プロセッサ81は、上記ステップS148が実行されることに応じて、遠距離移動演出を開始する。プロセッサ81は、上記遠距離移動演出中である場合、上記ステップS127において肯定判定する。そして、プロセッサ81は、遠距離移動演出中である場合、ステップS128に処理を進める。一方、プロセッサ81は、遠距離移動演出中でない場合、ステップS129に処理を進める。
【0152】
ステップS128において、プロセッサ81は、遠距離移動演出処理を行い、ステップS130に処理を進める。以下、
図22を参照して、上記ステップS128において行われる遠距離移動演出処理について説明する。
【0153】
図22において、プロセッサ81は、現時点がプレイヤキャラクタPCが移動元の位置からワープ開始するワープ開始期間であるか否かを判定する(ステップS171)。そして、プロセッサ81は、現時点がワープ開始期間である場合、ステップS172に処理を進める。一方、プロセッサ81は、現時点がワープ開始期間でない場合、ステップS176に処理を進める。
【0154】
ステップS172において、プロセッサ81は、実行中のワープ開始シーンを進行させてプレイヤキャラクタデータDbを更新して、次のステップに処理を進める。すなわち、プロセッサ81は、プレイヤキャラクタPCが移動元の位置からワープ開始して設定された移動先への遠距離移動を開始するワープ開始シーン(
図9参照)のアニメーションの画像をディスプレイ12に表示させる。なお、1回のステップS172は、1フレーム分の画像が表示され、ワープ開始シーンの実行中においてはステップS172の処理が繰り返し実行されることで、上記のアニメーションが再生されることとなる。ワープ開始期間中の描画処理については、フィールド画像が表示されているフィールドモード中と同様の処理が実行される場合もあるが、異なる場面を表現する場合において異なる描画処理が行われてもよい。この異なる描画処理の具体的な内容は任意であり、詳細は省略する。
【0155】
次に、プロセッサ81は、ワープ開始が終了したか否かを判定する(ステップS173)。例えば、プロセッサ81は、再生中のワープ開始シーンのアニメーションが終了した場合、上記ステップS173において肯定判定する。そして、プロセッサ81は、ワープ開始が終了した場合、ステップS174に処理を進める。一方、プロセッサ81は、ワープ開始が終了していない場合、ステップS186に処理を進める。
【0156】
ステップS174において、プロセッサ81は、移動元を中心として当該移動元の周辺のフィールド情報を表すマップ画像(
図10参照)の表示を開始して、次のステップに処理を進める。なお、上記ステップS174において表示される移動元を中心とするマップ画像は、上記マップ表示モードにおいて表示されるマップ画像の一部をキャプチャしたものが用いられてもよい。
【0157】
次に、プロセッサ81は、表示時間のカウントを開始して(ステップS175)、ステップS186に処理を進める。
【0158】
上記ステップS171においてワープ開始期間でないと判定された場合、プロセッサ81は、現時点がプレイヤキャラクタPCが移動先においてワープ終了するワープ終了期間であるか否かを判定する(ステップS176)。そして、プロセッサ81は、現時点がワープ終了期間でない場合、ステップS177に処理を進める。一方、プロセッサ81は、現時点がワープ終了期間である場合、ステップS185に処理を進める。
【0159】
ステップS177において、プロセッサ81は、上記ステップS175においてカウントが開始されている表示時間が1秒未満か否かを判定する。そして、プロセッサ81は、上記表示時間が1秒未満である場合、ステップS179に処理を進める。一方、プロセッサ81は、上記表示時間が1秒以上である場合、ステップS178に処理を進める。
【0160】
ステップS178において、プロセッサ81は、上記ステップS175においてカウントが開始されている表示時間が3秒以上、または上記ステップS148において開始されているロードの進捗度が20%以上であるか否かを判定する。そして、プロセッサ81は、上記表示時間が3秒未満であり、かつ、上記ロードの進捗度が20%未満である場合、ステップS179に処理を進める。一方、プロセッサ81は、上記表示時間が3秒以上、または、上記ロードの進捗度が20%以上である場合、ステップS182に処理を進める。
【0161】
ステップS179において、プロセッサ81は、移動元の周辺のフィールド情報を表すマップ画像の表示を継続し、次のステップに処理を進める。上記ステップS179において、プロセッサ81は、表示されているマップ画像からプレイヤキャラクタPCの現在地Cを示すアイコン画像が消去された後であれば、上記遠距離移動において移動元から移動先に向かうプレイヤキャラクタPCの当該マップ画像上の移動方向と逆方向(例えば、
図11の上図に示すA1方向)へ、所定の移動速度でスライドさせて表示してもよい。また、他の実施例において、上記待機期間中にユーザの操作入力に応じた処理(例えば、遠距離移動演出中に表示されるゲーム画像に重畳して表示されるTipsの内容をユーザの操作入力に基づいて更新する処理)を可能とする場合、上記ステップS179において操作データDaが示すユーザの指示操作入力に基づく画像を、マップ画像に重畳して表示してもよい。
【0162】
次に、プロセッサ81は、表示しているマップ画像からプレイヤキャラクタPCの現在地Cを示すアイコン画像を消去するタイミングか否かを判定する(ステップS180)。そして、プロセッサ81は、現在地Cを示すアイコン画像を消去するタイミングである場合、ステップS181に処理を進める。一方、プロセッサ81は、現在地Cを示すアイコン画像を消去するタイミングでない場合や当該アイコン画像が既に表示しているマップ画像から消去されている場合、ステップS186に処理を進める。なお、プロセッサ81は、上記表示時間や上記ロードの進捗度に基づいて、現時点が現在地Cを示すアイコン画像を消去するタイミングであるか否かを判定してもよい。
【0163】
ステップS181において、プロセッサ81は、移動元の周辺のフィールド情報を表す表示中のマップ画像から、プレイヤキャラクタPCの現在地Cを示すアイコン画像を消去し(
図10下図参照)、ステップS186に処理を進める。
【0164】
一方、上記表示時間が3秒以上、または、上記ロードの進捗度が20%以上であると判定された場合、プロセッサ81は、移動先の周辺のフィールド情報を表すマップ画像を表示して(ステップS182)、次のステップに処理を進める。なお、上記ステップS182において表示される移動先の周辺のフィールド情報を表すマップ画像(
図11下図および
図12参照)は、上記マップ表示モードにおいて表示されるマップ画像の一部をキャプチャしたものが用いられてもよい。また、プロセッサ81は、移動先を中心とするマップ画像が最終的に表示されるように、表示しているマップ画像を、上記遠距離移動において移動先に向かうプレイヤキャラクタPCの当該マップ画像上の移動方向と逆方向(
図11の下図に示すA2方向)へ、所定の移動速度でスライドさせて表示してもよい。また、他の実施例において、上記待機期間中にユーザの操作入力に応じた処理(例えば、遠距離移動演出中に表示されるゲーム画像に重畳して表示されるTipsの内容をユーザの操作入力に基づいて更新する処理)を可能とする場合、上記ステップS182において操作データDaが示すユーザの指示操作入力に基づく画像を、マップ画像に重畳して表示してもよい。
【0165】
次に、プロセッサ81は、表示しているマップ画像にプレイヤキャラクタPCの現在地Cを示すアイコン画像を出現させるタイミングか否かを判定する(ステップS183)。そして、プロセッサ81は、現在地Cを示すアイコン画像を出現させるタイミングである場合、ステップS184に処理を進める。一方、プロセッサ81は、現在地Cを示すアイコン画像を出現させるタイミングでない場合や当該アイコン画像が既に表示しているマップ画像に表示されている場合、ステップS186に処理を進める。なお、プロセッサ81は、上記表示時間や上記ロードの進捗度に基づいて、現時点が現在地Cを示すアイコン画像を出現させるタイミングであるか否かを判定してもよい。
【0166】
ステップS184において、プロセッサ81は、移動先の周辺のフィールド情報を表す表示中のマップ画像における移動先の位置に、プレイヤキャラクタPCの現在地Cを示すアイコン画像を出現させて表示し(
図12下図参照)、ステップS186に処理を進める。
【0167】
上記ステップS176においてワープ終了期間であると判定された場合、プロセッサ81は、ワープ終了シーンを進行させてプレイヤキャラクタデータDbを更新して(ステップS185)、ステップS186に処理を進める。すなわち、プロセッサ81は、プレイヤキャラクタPCが移動先の位置へワープ終了して遠距離移動を終えるワープ終了シーン(
図13参照)のアニメーションの画像をディスプレイ12に表示させる。なお、1回のステップS185は、1フレーム分の画像が表示され、ワープ終了シーンの実行中においてはステップS186の処理が繰り返し実行されることで、上記のアニメーションが再生されることとなる。ワープ終了期間中の描画処理については、フィールド画像が表示されているフィールドモード中と同様の処理が実行される場合もあるが、異なる場面を表現する場合において異なる描画処理が行われてもよい。この異なる描画処理の具体的な内容は任意であり、詳細は省略する。
【0168】
ステップS186において、プロセッサ81は、データロード処理を行い、次のステップに処理を進める。例えば、プロセッサ81は、上記ステップS148において開始された移動先のフィールドのデータの読み出しの処理を行うロードを1フレーム分進行させる処理を行い、フィールドデータDh上に読み込ませる。
【0169】
次に、プロセッサ81は、ロードが終了したか否かを判定する(ステップS187)。そして、プロセッサ81は、ロードが終了した場合、ステップS188に処理を進める。一方、プロセッサ81は、ロードが終了していない場合、当該サブルーチンによる処理を終了する。
【0170】
ステップS188において、プロセッサ81は、遠距離移動演出を終了して、通常のフィールドモード中の処理に復帰する処理を行い、当該サブルーチンによる処理を終了する。
【0171】
図20に戻り、上記ステップS127において遠距離移動演出中でないと判定された場合、プロセッサ81は、プレイヤ関連処理を行い(ステップS129)、ステップS130に処理を進める。プレイヤ関連においては、ユーザによる操作入力に基づいて、各種の処理(例えば、プレイヤキャラクタに関する制御処理)が実行される。以下、
図23を参照して、上記ステップS129で行われるプレイヤ関連処理について説明する。
【0172】
図23において、プロセッサ81は、操作データDaを参照して、処理モードを切り替える指示がユーザによって行われたか否かを判定する(ステップS191)。例えば、プロセッサ81は、マップ画像を表示する旨の指示がユーザによって行われた場合、上記ステップS191において肯定判定する。そして、プロセッサ81は、処理モードを切り替える指示が行われた場合、ステップS192に処理を進める。一方、プロセッサ81は、処理モードを切り替える指示が行われていない場合、ステップS193に処理を進める。
【0173】
ステップS192において、プロセッサ81は、ユーザの指示に応じて処理モードを切り替えて、ステップS202に処理を進める。すなわち、操作データDaが示すユーザの操作入力が、マップ画像を表示する旨の指示を示している場合、処理モードがマップ表示モードに切り替えられる。
【0174】
一方、上記ステップS191において処理モードを切り替える指示が行われていないと判定された場合、プロセッサ81は、プレイヤキャラクタPCに対するユーザの操作入力が受け付けられる操作受付期間であるか否かを判定する(ステップS193)。ここで、本実施例においては、プレイヤキャラクタPCに対するユーザの操作入力に応じて、プレイヤキャラクタPCが所定の動作(例えば、後述するステップS198において制御されるアクション動作)を行っている動作期間は、操作受付期間から外されるものとする。そして、プロセッサ81は、操作受付期間である場合、ステップS194に処理を進める。一方、プロセッサ81は、操作受付期間でない場合、ステップS201に処理を進める。
【0175】
ステップS194において、プロセッサ81は、マップ画像におけるフィールド情報を解放するためのユーザの操作入力が行われたか否かを判定する。例えば、プロセッサ81は、仮想空間における特定位置の近傍にプレイヤキャラクタPCが位置する状態において、特定位置を調べる動作をプレイヤキャラクタPCに行わせるための操作入力(例えば、「しらべる」コマンドを選択するユーザ操作入力)が行われた場合、上記ステップS194において肯定判定する。そして、プロセッサ81は、フィールド情報を解放するためのユーザの操作入力が行われた場合、ステップS195に処理を進める。一方、プロセッサ81は、フィールド情報を解放するためのユーザの操作入力が行われていない場合、ステップS197に処理を進める。
【0176】
ステップS195において、プロセッサ81は、上記操作入力が行われた特定位置に基づいたエリアのフィールド情報を解放するマップ開放処理を行い、次のステップに処理を進める。例えば、プロセッサ81は、特定位置に基づいたエリアのフィールド情報の解放状況を解放済に設定して、解放状況データDfを更新する。そして、プロセッサ81は、上述した方法に従って、解放状況データDfに基づいた解放済エリアのマップマスクを生成して、マップマスクデータDgを更新する。一例として、ゲーム処理の開始時においてメモリにはマップマスクのデータがマップマスクデータDgに記憶されており、プロセッサ81は、設定された解放エリアを示すようにマップマスクデータDgを更新する。
【0177】
次に、プロセッサ81は、フィールド情報が解放された場合における解放イベントのイベントシーンを開始して(ステップS196)、ステップS202に処理を進める。例えば、プロセッサ81は、特定位置に基づいたエリアのフィールド情報が解放される解放イベントを示すイベントシーンのアニメーションの再生を開始する。上記ステップS196の処理以降、上記アニメーションの再生が終了するまでは、上記ステップS123における判定結果は肯定となり、解放イベントのイベントシーンの実行が継続される。
【0178】
上記ステップS194においてフィールド情報を解放するためのユーザの操作入力が行われていないと判定された場合、プロセッサ81は、操作データDaに基づいて、プレイヤキャラクタPCに対するアクション指示のためのユーザの操作入力が行われたか否かを判定する(ステップS197)。ここで、上記アクション指示は、プレイヤキャラクタPCに、例えば攻撃動作やジャンプ動作等を行わせるための指示である。そして、プロセッサ81は、プレイヤキャラクタPCに対するアクション指示が行われた場合、ステップS198に処理を進める。一方、プロセッサ81は、プレイヤキャラクタPCに対するアクション指示が行われていない場合、ステップS199に処理を進める。
【0179】
ステップS198において、プロセッサ81は、ユーザのアクション指示に応じた動作をプレイヤキャラクタPCに開始させてプレイヤキャラクタデータDbを更新して、ステップS202に処理を進める。そして、上記ステップS198においてプレイヤキャラクタPCが動作を開始した後においては、後述するステップS201の処理によって、一定期間にわたって当該動作を行うようにプレイヤキャラクタPCが制御される。
【0180】
上記ステップS197においてプレイヤキャラクタPCに対するアクション指示が行われていないと判定された場合、プロセッサ81は、操作データDaに基づいて、プレイヤキャラクタPCに対する移動指示のためのユーザの操作入力が行われたか否かを判定する(ステップS199)。ここで、上記移動指示は、フィールド上においてプレイヤキャラクタPCを移動させる動作を行わせるための指示である。そして、プロセッサ81は、プレイヤキャラクタPCに対する移動指示が行われた場合、ステップS200に処理を進める。一方、プロセッサ81は、プレイヤキャラクタPCに対する移動指示が行われていない場合、ステップS201に処理を進める。
【0181】
ステップS200において、プロセッサ81は、ユーザの移動指示に応じて、プレイヤキャラクタPCをフィールド上において移動する動作をさせてプレイヤキャラクタデータDbを更新し、ステップS202に処理を進める。
【0182】
ステップS201において、プロセッサ81は、上記ステップS198で開始されたアクション動作の進行や、何も入力されていない場合の動作等、各種の動作を行うようにプレイヤキャラクタPCを制御してプレイヤキャラクタデータDbを更新し、ステップS202に処理を進める。なお、1回のステップS201においては、プロセッサ81は、1フレーム時間分の動作の進行を行うようにプレイヤキャラクタPCを制御する。上記ステップS201の処理が複数フレームにわたって繰り返し実行されることで、ユーザのアクション指示に応じた一連の動作をプレイヤキャラクタPCが行うこととなる。なお、プレイヤキャラクタPCが行うべき動作がユーザによって指示されていない場合(例えば、ステップS198で開始された動作が終了している場合)には、ステップS201において、プロセッサ81は、プレイヤキャラクタPCに動作を行わせなくてもよいし、プレイヤキャラクタPCの挙動を自然に見せるための動作(例えば、辺りを見回したり、体を揺らしたりする動作や、仮想空間における仮想的な物理演算(例えば、慣性の法則や重力の法則)等に基づく動作)を行わせてもよい。
【0183】
ステップS202において、プロセッサ81は、表示制御処理を行い、当該サブルーチンによる処理を終了する。例えば、プロセッサ81は、プレイヤキャラクタデータDbに基づいて、仮想空間にプレイヤキャラクタPCを配置する。また、プロセッサ81は、他のキャラクタやオブジェクトを仮想空間にそれぞれ配置する。また、プロセッサ81は、仮想カメラデータDcに基づいて、表示画像を生成するための仮想カメラの位置および/または姿勢を設定し、当該仮想カメラを仮想空間に配置する。そして、設定した仮想カメラから見た仮想空間画像(フィールド画像)を生成して、当該仮想空間画像をディスプレイ12に表示する制御を行う。なお、プロセッサ81は、プレイヤキャラクタPCの位置や姿勢に基づいて、仮想空間における仮想カメラの移動を制御する処理を実行して、仮想カメラデータDcを更新してもよい。また、プロセッサ81は、操作データDaに基づいて、仮想空間において仮想カメラを移動させて、仮想カメラデータDcを更新してもよい。また、プロセッサ81は、上記仮想空間画像に加えてマップ画像をさらに生成し、当該仮想空間画像の一部に重畳してマップ画像を表示するようにしてもよい。
【0184】
図20に戻り、ステップS130において、プロセッサ81は、ゲーム処理を終了するか否かを判定する。上記ステップS130においてゲーム処理を終了する条件としては、例えば、ゲーム処理が終了される条件が満たされたことや、ユーザがゲーム処理を終了する操作を行ったこと等がある。プロセッサ81は、ゲーム処理を終了しない場合に上記ステップS122に戻って処理を繰り返し、ゲーム処理を終了する場合に当該フローチャートによる処理を終了する。以降、ステップS122~ステップS130の一連の処理は、ステップS130で処理を終了すると判定されるまで繰り返し実行される。
【0185】
このように、本実施例においては、プレイヤキャラクタPCに遠距離移動させる際に生じる待機期間において行われる演出を豊富にすることができる。また、上記演出において、遠距離移動する移動元の周辺のフィールド情報を表すマップ画像および移動先の周辺のフィールド情報を表すマップ画像がそれぞれ表示されるため、当該遠距離移動の移動元および移動先のフィールドの状況をユーザに知らせることができる。したがって、待機期間においても、ユーザがフィールドを移動している感覚を得ることができる。
【0186】
なお、ゲームシステム1は、どのような装置であってもよく、携帯型のゲーム装置、任意の携帯型電子機器(PDA(Personal Digital Assistant)、携帯電話、パーソナルコンピュータ、カメラ、タブレット等)等であってもよい。
【0187】
また、上述した説明では情報処理(ゲーム処理)をゲームシステム1で行われる例を用いたが、上記処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、ゲームシステム1がさらに他の装置(例えば、サーバ、他の情報処理装置、他の画像表示装置、他のゲーム装置、他の携帯端末)と通信可能に構成されている場合、上記処理ステップは、さらに当該他の装置が協働することによって実行してもよい。このように、上記処理ステップの少なくとも一部を他の装置で行うことによって、上述した処理と同様の処理が可能となる。また、上述した情報処理は、少なくとも1つの情報処理装置により構成される情報処理システムに含まれる1つのプロセッサまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施例においては、ゲームシステム1のプロセッサ81が所定のプログラムを実行することによって情報処理を行うことが可能であるが、ゲームシステム1が備える専用回路によって上記処理の一部または全部が行われてもよい。
【0188】
ここで、上述した変形例によれば、いわゆるクラウドコンピューティングのシステム形態や分散型の広域ネットワークおよびローカルネットワークのシステム形態でも本発明を実現することが可能となる。例えば、分散型のローカルネットワークのシステム形態では、据置型の情報処理装置(据置型のゲーム装置)と携帯型の情報処理装置(携帯型のゲーム装置)との間で上記処理を協働により実行することも可能となる。なお、これらのシステム形態では、上述した処理をどの装置で行うかについては特に限定されず、どのような処理分担をしたとしても本発明を実現できることは言うまでもない。
【0189】
また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる条件等は、単なる一例に過ぎず他の順序、値、条件であっても、本実施例を実現できることは言うまでもない。
【0190】
また、上記プログラムは、外部メモリ等の外部記憶媒体を通じてゲームシステム1に供給されるだけでなく、有線または無線の通信回線を通じて当該装置に供給されてもよい。また、上記プログラムは、当該装置内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、CD-ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、これらの記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
【0191】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。また、当業者は、本発明の具体的な実施例の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。
【産業上の利用可能性】
【0192】
以上のように、本発明は、少なくとも一部のゲーム処理を中断する待機期間における演出等を豊富にすることができるゲームプログラム、ゲームシステム、ゲーム装置、およびゲーム処理方法等として利用することができる。
【符号の説明】
【0193】
1…情報処理システム
2…本体装置
3…左コントローラ
4…右コントローラ
11…ハウジング
12…ディスプレイ
13…タッチパネル
32、52…アナログスティック
42、64…端子
81…プロセッサ
82…ネットワーク通信部
83…コントローラ通信部
85…DRAM
101、111…通信制御部