IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 任天堂株式会社の特許一覧 ▶ 株式会社ポケモンの特許一覧

特許7490873ゲームプログラム、ゲームシステム、情報処理装置、および情報処理方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-17
(45)【発行日】2024-05-27
(54)【発明の名称】ゲームプログラム、ゲームシステム、情報処理装置、および情報処理方法
(51)【国際特許分類】
   A63F 13/56 20140101AFI20240520BHJP
   A63F 13/58 20140101ALI20240520BHJP
   A63F 13/803 20140101ALI20240520BHJP
【FI】
A63F13/56
A63F13/58
A63F13/803
【請求項の数】 8
(21)【出願番号】P 2023146784
(22)【出願日】2023-09-11
(62)【分割の表示】P 2021208276の分割
【原出願日】2021-12-22
(65)【公開番号】P2023158201
(43)【公開日】2023-10-26
【審査請求日】2023-11-09
【新規性喪失の例外の表示】特許法第30条第2項適用 (1)掲載日:令和3年2月27日、掲載アドレス:(https://www.pokemon.co.jp/ex/legends_arceus/ja/) (2)掲載日:令和3年2月27日、掲載アドレス:(https://www.pokemonkorea.co.kr/legends_arceus) (3)掲載日:令和3年2月27日、掲載アドレス:(https://legends.pokemon.com/en-us/) (4)掲載日:令和3年2月27日、掲載アドレス:(https://www.youtube.com/watch?v=TRmio2BUZ0A) (5)掲載日:令和3年8月18日、掲載アドレス:(https://www.youtube.com/watch?v=CfW0-DD6A10) (6)掲載日:令和3年9月28日、掲載アドレス:(https://www.youtube.com/watch?v=HMiSzxSU6eQ)
(73)【特許権者】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(73)【特許権者】
【識別番号】504440133
【氏名又は名称】株式会社ポケモン
(74)【代理人】
【識別番号】100158780
【弁理士】
【氏名又は名称】寺本 亮
(74)【代理人】
【識別番号】100121359
【弁理士】
【氏名又は名称】小沢 昌弘
(72)【発明者】
【氏名】岩尾 和昌
【審査官】白形 優依
(56)【参考文献】
【文献】特開2019-195339(JP,A)
【文献】パラシュート,ARK: Survival Evolved Wiki [online],2021年06月02日,[2024年5月8日検索], インターネット <URL:https://ark.fandom.com/ja/wiki/パラシュート?oldid=20666>
【文献】水泳,ARK: Survival Evolved Wiki [online],2021年10月25日,[2024年5月8日検索], インターネット <URL:https://ark.fandom.com/ja/wiki/水泳?oldid=26434>
【文献】トライブ,ARK: Survival Evolved Wiki [online],2020年12月19日,[2024年5月8日検索], インターネット <URL:https://ark.fandom.com/ja/wiki/トライブ?oldid=13430>
【文献】FELLOW,ICARUS ONLINE Wiki [online],2015年10月24日,[2023年8月15日検索], インターネット <URL:https://wikiwiki.jp/icarusonline/FELLOW>
【文献】Wiiゲームレビュー「ゼルダの伝説 スカイウォードソード」,GAME Watch [online],2011年12月26日,[2024年5月8日検索], インターネット <URL:https://game.watch.impress.co.jp/docs/review/501851.html>
【文献】[ニーアオートマタ]移動テクニック解説[ニーア],GameWith [online],2019年06月07日,[2024年5月8日検索], インターネット <URL:https://gamewith.jp/nierautomata/article/show/143188>
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24
A63F 13/00-13/98
(57)【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータに、
仮想空間内において、操作入力に基づいてプレイヤキャラクタを制御させ、
前記プレイヤキャラクタが搭乗可能地上用搭乗オブジェクトへの搭乗指示が行われた場合、前記プレイヤキャラクタを前記地上用搭乗オブジェクトに搭乗させて、地上において移動可能な状態にさせ、
前記地上用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが空中にいるときに第1の操作入力が行われた場合、前記プレイヤキャラクタを空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせ、
前記プレイヤキャラクタが前記空中用搭乗オブジェクトに搭乗中に、操作入力に基づいて前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタを空中において移動させ、
前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが地面に向かって移動する場合、前記地上用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に自動的に変更させて、地上において移動可能な状態にさせる、ゲームプログラム。
【請求項2】
前記コンピュータにさらに、
前記プレイヤキャラクタが前記地上用搭乗オブジェクトに搭乗中に、第2の操作入力に基づいてジャンプ動作を行わせ、
前記ジャンプ動作中に前記第1の操作入力が行われた場合、前記プレイヤキャラクタを前記空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせる、請求項に記載のゲームプログラム。
【請求項3】
プロセッサを備えたゲームシステムであって、
前記プロセッサは、
仮想空間内において、操作入力に基づいてプレイヤキャラクタを制御し、
前記プレイヤキャラクタが搭乗可能地上用搭乗オブジェクトへの搭乗指示が行われた場合、前記プレイヤキャラクタを前記地上用搭乗オブジェクトに搭乗させて、地上において移動可能な状態にさせ、
前記地上用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが空中にいるときに第1の操作入力が行われた場合、前記プレイヤキャラクタを空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせ、
前記プレイヤキャラクタが前記空中用搭乗オブジェクトに搭乗中に、操作入力に基づいて前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタを空中において移動させ、
前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが地面に向かって移動する場合、前記地上用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に自動的に変更させて、地上において移動可能な状態にさせる、ゲームシステム。
【請求項4】
前記プロセッサはさらに、
前記プレイヤキャラクタが前記地上用搭乗オブジェクトに搭乗中に、第2の操作入力に基づいてジャンプ動作を行わせ、
前記ジャンプ動作中に前記第1の操作入力が行われた場合、前記プレイヤキャラクタを前記空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせる、請求項に記載のゲームシステム。
【請求項5】
プロセッサを備えた情報処理装置であって、
前記プロセッサは、
仮想空間内において、操作入力に基づいてプレイヤキャラクタを制御し、
前記プレイヤキャラクタが搭乗可能地上用搭乗オブジェクトへの搭乗指示が行われた場合、前記プレイヤキャラクタを前記地上用搭乗オブジェクトに搭乗させて、地上において移動可能な状態にさせ、
前記地上用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが空中にいるときに第1の操作入力が行われた場合、前記プレイヤキャラクタを空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせ、
前記プレイヤキャラクタが前記空中用搭乗オブジェクトに搭乗中に、操作入力に基づいて前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタを空中において移動させ、
前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが地面に向かって移動する場合、前記地上用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に自動的に変更させて、地上において移動可能な状態にさせる、情報処理装置。
【請求項6】
前記プロセッサはさらに、
前記プレイヤキャラクタが前記地上用搭乗オブジェクトに搭乗中に、第2の操作入力に基づいてジャンプ動作を行わせ、
前記ジャンプ動作中に前記第1の操作入力が行われた場合、前記プレイヤキャラクタを前記空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせる、請求項5に記載の情報処理装置。
【請求項7】
プロセッサにおいて実行される情報処理方法であって、
仮想空間内において、操作入力に基づいてプレイヤキャラクタを制御することと
前記プレイヤキャラクタが搭乗可能地上用搭乗オブジェクトへの搭乗指示が行われた場合、前記プレイヤキャラクタを前記地上用搭乗オブジェクトに搭乗させて、地上において移動可能な状態にさせることと
前記地上用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが空中にいるときに第1の操作入力が行われた場合、前記プレイヤキャラクタを空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせることと
前記プレイヤキャラクタが前記空中用搭乗オブジェクトに搭乗中に、操作入力に基づいて前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタを空中において移動させることと
前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが地面に向かって移動する場合、前記地上用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に自動的に変更させて、地上において移動可能な状態にさせることと、を備える、情報処理方法。
【請求項8】
前記プレイヤキャラクタが前記地上用搭乗オブジェクトに搭乗中に、第2の操作入力に基づいてジャンプ動作を行わせることと、
前記ジャンプ動作中に前記第1の操作入力が行われた場合、前記プレイヤキャラクタを前記空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせることと、をさらに備える、請求項7に記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プレイヤキャラクタを仮想空間で移動させることが可能なゲームプログラム、ゲームシステム、情報処理装置、および情報処理方法に関する。
【背景技術】
【0002】
先行技術として、プレイヤキャラクタをオブジェクトに搭乗させて仮想空間を移動させることが可能なゲームがある(例えば、非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0003】
【文献】“フィールドをポケモンライドで駆け巡ろう”、[online]、2017年、任天堂株式会社、[令和3年11月22日検索]、インターネット<URL:https://www.pokemon.co.jp/ex/usum/gamesystem/170922_04.html>
【発明の概要】
【発明が解決しようとする課題】
【0004】
このような従来のゲームにおいては、搭乗するオブジェクトの切り替えに改善の余地があった。
【0005】
それ故、本発明の目的は、プレイヤキャラクタをオブジェクトに搭乗させて移動させるゲームにおいて、複数の搭乗オブジェクトの切り替えをスムーズに行うことが可能なゲームプログラム、ゲームシステム、情報処理装置、および情報処理方法を提供することである。
【課題を解決するための手段】
【0006】
上記の課題を解決すべく、本発明は、以下の構成を採用した。
【0007】
本発明のゲームプログラムは、情報処理装置のコンピュータに、仮想空間内において、操作入力に基づいてプレイヤキャラクタを制御させ、前記プレイヤキャラクタが搭乗可能であって、地上用搭乗オブジェクトと空中用搭乗オブジェクトとを少なくとも含む複数種類の搭乗オブジェクトのうち、選択操作に基づいて前記地上用搭乗オブジェクトが選択されて搭乗指示が行われた場合、前記プレイヤキャラクタを前記地上用搭乗オブジェクトに搭乗させて、地上において移動可能な状態にさせる。また、前記ゲームプログラムは、前記コンピュータに、前記選択操作に基づいて前記空中用搭乗オブジェクトが選択されて搭乗指示が行われた場合、又は、前記プレイヤキャラクタが空中にいるときに第1の操作入力が行われた場合、前記プレイヤキャラクタを前記空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせ、前記プレイヤキャラクタが前記空中用搭乗オブジェクトに搭乗中に、操作入力に基づいて前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタを空中において移動させる。また、前記ゲームプログラムは、前記コンピュータに、前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが地面に向かって移動する場合、前記地上用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に自動的に変更させて、地上において移動可能な状態にさせる。
【0008】
上記によれば、プレイヤキャラクタを地上用搭乗オブジェクト又は空中用搭乗オブジェクトに搭乗させて、地上又は空中において移動させることができる。搭乗オブジェクトを選択して搭乗させることができるとともに、空中では第1の操作入力を行うことで空中用搭乗オブジェクトに即座に搭乗させることができる。空中から地面に向かって移動するときには、自動的に空中用搭乗オブジェクトから地上用搭乗オブジェクトに切り替えることができ、スムーズに搭乗オブジェクトを切り替えることができる。
【0009】
また、前記搭乗オブジェクトは、水上又は水中を移動可能な水上用搭乗オブジェクトをさらに含んでもよい。前記ゲームプログラムは、前記コンピュータに、前記プレイヤキャラクタが前記空中用搭乗オブジェクトに搭乗中に、前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが水面に向かって移動する場合、前記水上用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に自動的に変更させて、水上又は水中において移動可能な状態にさせてもよい。
【0010】
上記によれば、水上においてもプレイヤキャラクタを水上用搭乗オブジェクトに搭乗させて移動させることができる。空中から水面に向かって移動するときには、自動的に空中用搭乗オブジェクトから水上用搭乗オブジェクトに切り替えることができ、スムーズに搭乗オブジェクトを切り替えることができる。
【0011】
また、前記ゲームプログラムは、前記コンピュータにさらに、前記プレイヤキャラクタが前記地上用搭乗オブジェクト又は前記水上用搭乗オブジェクトに搭乗中に、前記選択操作に基づいて前記空中用搭乗オブジェクトが選択された場合、前記プレイヤキャラクタを前記空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせてもよい。
【0012】
上記によれば、例えばプレイヤキャラクタが地上用搭乗オブジェクトに搭乗中は、搭乗指示を行わなくても、選択操作で空中用搭乗オブジェクトに切り替えることができる。
【0013】
また、前記ゲームプログラムは、前記コンピュータにさらに、前記プレイヤキャラクタが前記地上用搭乗オブジェクト又は前記水上用搭乗オブジェクトに搭乗中に、第2の操作入力に基づいてジャンプ動作を行わせ、前記ジャンプ動作中に前記第1の操作入力が行われた場合、前記プレイヤキャラクタを前記空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせてもよい。
【0014】
上記によれば、ジャンプ動作によってプレイヤキャラクタが空中にいるときに、第1の操作入力に応じてプレイヤキャラクタを空中用搭乗オブジェクトに搭乗させることができる。
【0015】
また、前記ゲームプログラムは、前記コンピュータにさらに、前記プレイヤキャラクタが所定の基準を超える高さから、又は、所定の基準を超える速度で空中から地面に落下した場合に、前記プレイヤキャラクタに所定のダメージを与えさせてもよい。
【0016】
上記によれば、プレイヤキャラクタが地面に落下した場合に所定のダメージが与えられる。プレイヤキャラクタが空中にいるときには、第1の操作入力を行うことでプレイヤキャラクタを空中用搭乗オブジェクトに即座に搭乗させることができる。このため、プレイヤキャラクタが落下してダメージを与えられることを防止することができる。
【0017】
また、前記搭乗オブジェクトは、崖面を移動可能な崖面用搭乗オブジェクトをさらに含んでもよい。前記ゲームプログラムは、前記コンピュータにさらに、前記選択操作に基づいて前記崖面用搭乗オブジェクトが選択されて搭乗指示が行われた場合、前記プレイヤキャラクタを前記崖面用搭乗オブジェクトに搭乗させて、地面又は崖面において移動可能な状態にさせ、前記プレイヤキャラクタが前記空中用搭乗オブジェクトに搭乗中に、前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが崖面に向かって移動する場合、前記第1の操作入力に基づいて、前記崖面用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に変更させて、崖面において移動可能な状態にさせてもよい。
【0018】
上記によれば、プレイヤキャラクタが空中用搭乗オブジェクトに搭乗中において、崖面に向かって移動する場合には、自動ではなく第1の操作入力に応じてプレイヤキャラクタを崖面用搭乗オブジェクトに搭乗させることができる。これにより、プレイヤが意図しない切り替えを防止することができるとともに、空中用搭乗オブジェクトから崖面用搭乗オブジェクトへの移行を比較的スムーズに行うことができる。
【0019】
他の発明のゲームプログラムは、情報処理装置のコンピュータに、仮想空間内において、操作入力に基づいてプレイヤキャラクタを制御させ、前記プレイヤキャラクタが搭乗可能であって、水上用搭乗オブジェクトと空中用搭乗オブジェクトとを少なくとも含む複数種類の搭乗オブジェクトのうち、選択操作に基づいて前記空中用搭乗オブジェクトが選択されて搭乗指示が行われた場合、又は、前記プレイヤキャラクタが空中にいるときに第1の操作入力が行われた場合、前記プレイヤキャラクタを前記空中用搭乗オブジェクトに搭乗させて、空中において移動可能な状態にさせる。また、前記ゲームプログラムは、前記水上用搭乗オブジェクトが選択されているときに搭乗指示が行われた場合、前記プレイヤキャラクタを前記水上用搭乗オブジェクトに搭乗させて、水上又は水中において移動可能な状態にさせる。また、前記ゲームプログラムは、前記プレイヤキャラクタが前記空中用搭乗オブジェクトに搭乗中に、操作入力に基づいて前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタを空中において移動させる。また、前記ゲームプログラムは、前記空中用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが水面に向かって移動する場合、前記水上用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に自動的に変更させて、水上又は水中において移動可能な状態にさせる。
【0020】
上記によれば、プレイヤキャラクタを水上用搭乗オブジェクト又は空中用搭乗オブジェクトに搭乗させて、水上又は空中において移動させることができる。搭乗オブジェクトを選択して搭乗させることができるとともに、空中では第1の操作入力を行うことで空中用搭乗オブジェクトに即座に搭乗させることができる。空中から水面に向かって移動するときには、自動的に空中用搭乗オブジェクトから水上用搭乗オブジェクトに切り替えることができ、スムーズに搭乗オブジェクトを切り替えることができる。
【0021】
他の発明のゲームプログラムは、情報処理装置のコンピュータに、仮想空間内において、操作入力に基づいてプレイヤキャラクタを制御させ、前記プレイヤキャラクタが搭乗可能であって、地上用搭乗オブジェクトと水上用搭乗オブジェクトとを少なくとも含む複数種類の搭乗オブジェクトのうち、選択操作に基づいて前記地上用搭乗オブジェクトが選択されて搭乗指示が行われた場合、前記プレイヤキャラクタを前記地上用搭乗オブジェクトに搭乗させて、地上において移動可能な状態にさせ、前記プレイヤキャラクタが前記地上用搭乗オブジェクトに搭乗中に、操作入力に基づいて、前記地上用搭乗オブジェクトに搭乗した前記プレイヤキャラクタを地上において移動させる。また、前記ゲームプログラムは、前記コンピュータに、前記地上用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが水面に向かって移動する場合、前記水上用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に自動的に変更させて、水上又は水中において移動可能な状態にさせる。また、前記ゲームプログラムは、前記コンピュータに、前記水上用搭乗オブジェクトが選択されているときに搭乗指示が行われた場合、又は、前記プレイヤキャラクタが水上又は水中にいるときに第1の操作入力が行われた場合、前記プレイヤキャラクタを前記水上用搭乗オブジェクトに搭乗させて、水上又は水中において移動可能な状態にさせ、前記プレイヤキャラクタが前記水上用搭乗オブジェクトに搭乗中に、操作入力に基づいて、前記水上用搭乗オブジェクトに搭乗した前記プレイヤキャラクタを水上又は水中において移動させる。また、前記ゲームプログラムは、前記コンピュータに、前記水上用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが地面に向かって移動する場合、前記地上用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に自動的に変更させて、地上において移動可能な状態にさせる。
【0022】
上記によれば、プレイヤキャラクタを地上用搭乗オブジェクト又は水上用搭乗オブジェクトに搭乗させて、地上又は水上において移動させることができる。搭乗オブジェクトを選択して搭乗させることができるとともに、水上では第1の操作入力を行うことで水上用搭乗オブジェクトに即座に搭乗させることができる。地面から水面に向かって移動するときには、自動的に地上用搭乗オブジェクトから水上用搭乗オブジェクトに切り替え、水面から地面に向かって移動するときには、自動的に水上用搭乗オブジェクトから地上用搭乗オブジェクトに切り替えることができ、スムーズに搭乗オブジェクトを切り替えることができる。
【0023】
また、前記ゲームプログラムは、前記コンピュータにさらに、前記プレイヤキャラクタが水上又は水中に所定の基準を超える時間滞在した場合、前記プレイヤキャラクタに所定のダメージを与えさせてもよい。
【0024】
上記によれば、プレイヤキャラクタが水中にいるときには所定のダメージが与えられる。プレイヤキャラクタが水中にいるときには、第1の操作入力を行うことでプレイヤキャラクタを水上用搭乗オブジェクトに即座に搭乗させることができる。このため、プレイヤキャラクタがダメージを与えられることを防止することができる。
【0025】
また、前記搭乗オブジェクトは、崖面を移動可能な崖面用搭乗オブジェクトをさらに含んでもよい。前記ゲームプログラムは、前記コンピュータにさらに、前記選択操作に基づいて前記崖面用搭乗オブジェクトが選択されて搭乗指示が行われた場合、前記プレイヤキャラクタを前記崖面用搭乗オブジェクトに搭乗させて、地面又は崖面において移動可能な状態にさせ、前記プレイヤキャラクタが前記水上用搭乗オブジェクトに搭乗中に、前記水上用搭乗オブジェクトに搭乗した前記プレイヤキャラクタが崖面に向かって移動する場合、前記第1の操作入力に基づいて、前記崖面用搭乗オブジェクトに前記プレイヤキャラクタが搭乗した状態に変更させて、崖面において移動可能な状態にさせてもよい。
【0026】
上記によれば、プレイヤキャラクタが水中用搭乗オブジェクトに搭乗中において、崖面に向かって移動する場合には、自動ではなく第1の操作入力に応じてプレイヤキャラクタを崖面用搭乗オブジェクトに搭乗させることができる。これにより、プレイヤが意図しない切り替えを防止することができるとともに、水上用搭乗オブジェクトから崖面用搭乗オブジェクトへの移行を比較的スムーズに行うことができる。
【0027】
また、他の発明は、上記プログラムを実行する情報処理装置であってもよいし、情報処理システムであってもよい。また、他の発明は、プロセッサにおいて実行される情報処理方法であってもよい。
【発明の効果】
【0028】
本発明によれば、プレイヤキャラクタを搭乗オブジェクトに搭乗させて仮想空間を移動させることができ、搭乗オブジェクトの切り替えをスムーズに行うことができる。
【図面の簡単な説明】
【0029】
図1】本体装置2に左コントローラ3および右コントローラ4を装着した状態を示す図
図2】本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図
図3】本体装置2の一例を示す六面図
図4】左コントローラ3の一例を示す六面図
図5】右コントローラ4の一例を示す六面図
図6】本体装置2の内部構成の一例を示すブロック図
図7】本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図
図8】本実施形態のゲームの実行中に表示されるゲーム画像の一例を示す図
図9】プレイヤキャラクタ70が馬キャラクタ77に搭乗している状態のゲーム画像の一例を示す図
図10】プレイヤキャラクタ70が地面上にいるときに鳥キャラクタ78に搭乗するシーンの一例を示す図
図11】プレイヤキャラクタ70が地面上でジャンプして鳥キャラクタ78に搭乗するシーンの一例を示す図
図12】プレイヤキャラクタ70が水中にいるときに魚キャラクタ79に搭乗するシーンの一例を示す図
図13】プレイヤキャラクタ70が崖面75の近傍にいるときに崖面用搭乗キャラクタ80に搭乗するシーンの一例を示す図
図14】プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗している状態から地上用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図
図15】プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗している状態から水上用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図
図16】プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗している状態から水上用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図
図17】プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗している状態から崖面用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図
図18】プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗している状態から崖面用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図
図19】本体装置2のメモリ(主にDRAM85)に記憶されるデータの一例を示す図
図20】本体装置2のプロセッサ81において行われるゲーム処理の一例を示すフローチャート
図21】ステップS104の通常状態処理の一例を示すフローチャート
図22】ステップS105の搭乗中処理の一例を示すフローチャート
図23】ステップS301の空中キャラ搭乗中処理の一例を示すフローチャート
図24】ステップS303の地上キャラ搭乗中処理の一例を示すフローチャート
図25】ステップS305の水上キャラ搭乗中処理の一例を示すフローチャート
図26】ステップS306の崖面キャラ搭乗中処理の一例を示すフローチャート
【発明を実施するための形態】
【0030】
(システム構成)
以下、本実施形態の一例に係るゲームシステムについて説明する。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる(図2参照)。以下では、本実施形態のゲームシステム1のハードウェア構成について説明し、その後に本実施形態のゲームシステム1の制御について説明する。
【0031】
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
【0032】
図2は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。図1および図2に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
【0033】
図3は、本体装置2の一例を示す六面図である。図3に示すように、本体装置2は、略板状のハウジング11を備える。本実施形態において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。
【0034】
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
【0035】
図3に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
【0036】
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
【0037】
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、図6に示すスピーカ88)を備えている。図3に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカ88の出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
【0038】
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。
【0039】
図3に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。また、本体装置2は、電源ボタン28を備える。
【0040】
本体装置2は、下側端子27を備える。下側端子27は、本体装置2がクレードルと通信を行うための端子である。本実施形態において、下側端子27は、USBコネクタ(より具体的には、メス側コネクタ)である。上記一体型装置または本体装置2単体をクレードルに載置した場合、ゲームシステム1は、本体装置2が生成して出力する画像を据置型モニタに表示することができる。また、本実施形態においては、クレードルは、載置された上記一体型装置または本体装置2単体を充電する機能を有する。また、クレードルは、ハブ装置(具体的には、USBハブ)の機能を有する。
【0041】
図4は、左コントローラ3の一例を示す六面図である。図4に示すように、左コントローラ3は、ハウジング31を備える。本実施形態においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、図1および図4に示すy軸方向)に長い形状である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0042】
左コントローラ3は、アナログスティック32を備える。図4に示すように、アナログスティック32は、ハウジング31の主面に設けられる。アナログスティック32は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック32を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。なお、左コントローラ3は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック32を押下する入力が可能である。
【0043】
左コントローラ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プログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
【0044】
また、左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。
【0045】
図5は、右コントローラ4の一例を示す六面図である。図5に示すように、右コントローラ4は、ハウジング51を備える。本実施形態においては、ハウジング51は、縦長の形状、すなわち、上下方向に長い形状である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0046】
右コントローラ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を備える。
【0047】
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
【0048】
図6は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、図3に示す構成の他、図6に示す各構成要素81~91、97、および98を備える。これらの構成要素81~91、97、および98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
【0049】
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
【0050】
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【0051】
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
【0052】
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
【0053】
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、第1の通信態様としてWi-Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
【0054】
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
【0055】
プロセッサ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は、クレードルを介してデータ(例えば、画像データや音声データ)を据置型モニタ等に出力することができる。
【0056】
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、複数のユーザは、左コントローラ3および右コントローラ4のセットをそれぞれ用いて、本体装置2に対する入力を同時に行うことができる。一例として、第1ユーザが左コントローラ3および右コントローラ4の第1セットを用いて本体装置2に対して入力を行うと同時に、第2ユーザが左コントローラ3および右コントローラ4の第2セットを用いて本体装置2に対して入力を行うことが可能となる。
【0057】
本体装置2は、タッチパネル13の制御を行う回路であるタッチパネルコントローラ86を備える。タッチパネルコントローラ86は、タッチパネル13とプロセッサ81との間に接続される。タッチパネルコントローラ86は、タッチパネル13からの信号に基づいて、例えばタッチ入力が行われた位置を示すデータを生成して、プロセッサ81へ出力する。
【0058】
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
【0059】
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、プロセッサ81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。
【0060】
また、本体装置2は、加速度センサ89を備える。本実施形態においては、加速度センサ89は、所定の3軸(例えば、図1に示すxyz軸)方向に沿った加速度の大きさを検出する。なお、加速度センサ89は、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。
【0061】
また、本体装置2は、角速度センサ90を備える。本実施形態においては、角速度センサ90は、所定の3軸(例えば、図1に示すxyz軸)回りの角速度を検出する。なお、角速度センサ90は、1軸回りあるいは2軸回りの角速度を検出するものであってもよい。
【0062】
加速度センサ89および角速度センサ90は、プロセッサ81に接続され、加速度センサ89および角速度センサ90の検出結果は、プロセッサ81へ出力される。プロセッサ81は、上記の加速度センサ89および角速度センサ90の検出結果に基づいて、本体装置2の動きおよび/または姿勢に関する情報を算出することが可能である。
【0063】
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
【0064】
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
【0065】
図7は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、図6で示しているため図7では省略している。
【0066】
左コントローラ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(登録商標)の規格に従って行われる。
【0067】
また、左コントローラ3は、例えばフラッシュメモリ等のメモリ102を備える。通信制御部101は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ102に記憶されるファームウェアを実行することによって各種の処理を実行する。
【0068】
左コントローラ3は、各ボタン103(具体的には、ボタン33~39、43、44、および47)を備える。また、左コントローラ3は、アナログスティック(図7では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
【0069】
左コントローラ3は、慣性センサを備える。具体的には、左コントローラ3は、加速度センサ104を備える。また、左コントローラ3は、角速度センサ105を備える。本実施形態においては、加速度センサ104は、所定の3軸(例えば、図4に示すxyz軸)方向に沿った加速度の大きさを検出する。なお、加速度センサ104は、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。本実施形態においては、角速度センサ105は、所定の3軸(例えば、図4に示すxyz軸)回りの角速度を検出する。なお、角速度センサ105は、1軸回りあるいは2軸回りの角速度を検出するものであってもよい。加速度センサ104および角速度センサ105は、それぞれ通信制御部101に接続される。そして、加速度センサ104および角速度センサ105の検出結果は、適宜のタイミングで繰り返し通信制御部101へ出力される。
【0070】
通信制御部101は、各入力部(具体的には、各ボタン103、アナログスティック32、各センサ104および105)から、入力に関する情報(具体的には、操作に関する情報、またはセンサによる検出結果)を取得する。通信制御部101は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
【0071】
上記操作データが本体装置2へ送信されることによって、本体装置2は、左コントローラ3に対して行われた入力を得ることができる。すなわち、本体装置2は、各ボタン103およびアナログスティック32に対する操作を、操作データに基づいて判別することができる。また、本体装置2は、左コントローラ3の動きおよび/または姿勢に関する情報を、操作データ(具体的には、加速度センサ104および角速度センサ105の検出結果)に基づいて算出することができる。
【0072】
左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
【0073】
図7に示すように、右コントローラ4は、本体装置2との間で通信を行う通信制御部111を備える。また、右コントローラ4は、通信制御部111に接続されるメモリ112を備える。通信制御部111は、端子64を含む各構成要素に接続される。通信制御部111およびメモリ112は、左コントローラ3の通信制御部101およびメモリ102と同様の機能を有する。したがって、通信制御部111は、端子64を介した有線通信と、端子64を介さない無線通信(具体的には、Bluetooth(登録商標)の規格に従った通信)との両方で本体装置2と通信を行うことが可能であり、右コントローラ4が本体装置2に対して行う通信方法を制御する。
【0074】
右コントローラ4は、左コントローラ3の各入力部と同様の各入力部を備える。具体的には、各ボタン113、アナログスティック52、慣性センサ(加速度センサ114および角速度センサ115)を備える。これらの各入力部については、左コントローラ3の各入力部と同様の機能を有し、同様に動作する。
【0075】
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
【0076】
(本実施形態のゲームの概要)
次に、本実施形態のゲームの概要について説明する。図8は、本実施形態のゲームの実行中に表示されるゲーム画像の一例を示す図である。
【0077】
図8に示されるように、仮想空間には地面71が形成され、地面71上には、プレイヤキャラクタ70が配置される。地面71は、仮想空間の上下方向の軸に垂直な面であり、プレイヤキャラクタ70が移動可能な領域である。なお、地面71は完全な水平面である必要はなく、凹凸があってもよい。また、地面71の一部又は全部は、仮想空間の上下方向の軸に対して所定の角度(例えば、30度未満)を有してもよい。また、地面71には、土、砂、草原等、複数の種類があってもよい。地面71上には、プレイヤキャラクタ70の他にも、岩オブジェクト72や木オブジェクト73等が配置される。
【0078】
また、仮想空間には、水面74が形成される。水面74は、地面71よりも低い位置にあり、地面とほぼ平行な面である。水面74は、例えば、川や湖、海等であってもよい。水面74は、プレイヤキャラクタ70が通常の状態で移動することが困難又は不可能な領域である。プレイヤキャラクタ70が通常の状態で水面74の領域に入ると、プレイヤキャラクタ70は所定期間泳ぐことができるが、その後に水中に沈み、ダメージを受ける。後述するように、プレイヤキャラクタ70は、水上用搭乗キャラクタに搭乗した状態で水面74の領域(水上又は水中)を移動可能である。
【0079】
また、仮想空間には、崖面75がある。崖面75は、地面71に対して所定の角度(例えば、30度以上)を有する面であり、プレイヤキャラクタ70が通常の状態で移動することが困難又は不可能な面である。後述するように、プレイヤキャラクタ70は、崖面用搭乗キャラクタに搭乗した状態で崖面75を上ったり下ったりすることが可能である。
【0080】
プレイヤキャラクタ70は、プレイヤの操作入力に応じて、仮想空間内を移動する。例えば、左コントローラ3のアナログスティック32に対する入力に応じて、プレイヤキャラクタ70は地面71上を移動する。
【0081】
本実施形態のゲームでは、プレイヤキャラクタ70が仮想空間を移動しながら、敵キャラクタとの戦闘を行ったり、敵キャラクタを捕獲したりすることができる。捕獲された敵キャラクタは、プレイヤが所有する所有キャラクタとなる。以後、プレイヤは、所有キャラクタを用いてゲームを進めることができる。例えば、プレイヤキャラクタ70が別の敵キャラクタに遭遇した場合に、プレイヤは、所有キャラクタを当該遭遇した敵キャラクタと戦闘させることができる。当該戦闘において所定の条件が満たされると、当該遭遇した敵キャラクタが、プレイヤの所有キャラクタにさらに加わる。このようにしてプレイヤは、ゲーム中に複数種類の所有キャラクタを取得して、自身の所有物とすることができる。
【0082】
複数の所有キャラクタの中には、プレイヤキャラクタ70が搭乗(ライド)することができる所有キャラクタがある。プレイヤキャラクタ70が搭乗することができる所有キャラクタを、「搭乗キャラクタ」という。なお、ここで「プレイヤキャラクタ70が搭乗キャラクタに搭乗する」とは、プレイヤキャラクタ70が、搭乗キャラクタと一体となって移動可能な状態になることを意味する。例えば、「プレイヤキャラクタ70が搭乗キャラクタに搭乗すること」は、プレイヤキャラクタ70が搭乗キャラクタの上に乗ること、プレイヤキャラクタ70が搭乗キャラクタに掴まること、プレイヤキャラクタ70が搭乗キャラクタにぶら下がることを含む。なお、プレイヤキャラクタ70と搭乗キャラクタとが、直接的に接触する場合に限らず間接的に接触して一体的に移動可能な状態になる場合も、「プレイヤキャラクタ70が搭乗キャラクタに搭乗する」ことに含まれる。
【0083】
搭乗キャラクタには複数の種類がある。例えば、複数種類の搭乗キャラクタは、地上用搭乗キャラクタと、水上用搭乗キャラクタと、空中用搭乗キャラクタと、崖面用搭乗キャラクタとを含む。
【0084】
地上用搭乗キャラクタは、地面71上を移動可能な搭乗キャラクタであり、地面71上での移動に適したキャラクタである。地上用搭乗キャラクタは、地面以外の領域(水上又は水中、空中、崖面)を移動不可能又は移動困難である。
【0085】
水上用搭乗キャラクタは、水上又は水中(水面74の領域)を移動可能な搭乗キャラクタであり、水上又は水中以外の領域(地面、空中、崖面)を移動不可能又は移動困難である。
【0086】
空中用搭乗キャラクタは、空中を移動可能な搭乗キャラクタであり、空中以外の領域(地面、水上又は水中、崖面)を移動不可能又は移動困難である。プレイヤキャラクタ70は、空中用搭乗キャラクタに搭乗していない状態(通常の状態、又は、空中用搭乗キャラクタ以外の搭乗キャラクタに搭乗している状態)では、仮想空間の下方に働く重力を受けるため、空中に存在し続けることはできず、空中を落下する。プレイヤキャラクタ70が所定の高さ以上の位置から地面71に落下する場合、又は、所定のスピード以上で地面71に落下する場合、プレイヤキャラクタ70は、地面71に落下した時点で所定のダメージを受ける。
【0087】
崖面用搭乗キャラクタは、崖面75上での移動に適したキャラクタであり、崖面75を上ったり下ったりすることが可能な搭乗キャラクタである。崖面用搭乗キャラクタは、崖面75又は地面71を移動可能である。崖面用搭乗キャラクタは、崖面75又は地面71以外の領域(水上又は水中、空中)を移動不可能又は移動困難である。
【0088】
プレイヤは、プレイヤキャラクタ70を搭乗キャラクタに搭乗させて、プレイヤキャラクタ70及び搭乗キャラクタを仮想空間内で移動させることができる。図8に示されるように、ゲーム画像の右下には、複数種類の搭乗キャラクタのうちの何れかを選択するための選択画像76が表示される。
【0089】
選択画像76は、現在選択されている搭乗キャラクタを示す画像である。図8では、選択画像76として、地上用搭乗キャラクタの一例である馬キャラクタ77を示す画像が表示されている。例えば、左コントローラ3のボタン33又は36が押下されると、選択画像76が切り替わる。プレイヤは、例えばボタン33又は36を用いて、複数の搭乗キャラクタのうちの何れかを選択することができる。例えば、プレイヤキャラクタ70が地面71上にいる場合、プレイヤキャラクタ70は、馬キャラクタ77(図9参照)を含む複数の地上用搭乗キャラクタのうちの何れかに搭乗することができる。プレイヤは、ボタン33又は36を用いた選択操作により、これら複数の地上用搭乗キャラクタのうちの何れかを選択することができる。また、プレイヤキャラクタ70が地面71上にいる場合、プレイヤは、空中用搭乗キャラクタの一例である鳥キャラクタ78(後述する)を選択することもできる。
【0090】
図8に示されるように、馬キャラクタ77が選択された状態で、例えば右コントローラ4のプラスボタン57が押下されると、プレイヤキャラクタ70は馬キャラクタ77に搭乗する。
【0091】
図9は、プレイヤキャラクタ70が馬キャラクタ77に搭乗している状態のゲーム画像の一例を示す図である。図9に示されるように、馬キャラクタ77が選択された状態で、搭乗指示(例えば、プラスボタン57の押下)が行われると、馬キャラクタ77が出現し、当該馬キャラクタ77にプレイヤキャラクタ70が搭乗した状態となる。これにより、プレイヤキャラクタ70と馬キャラクタ77とは一体として地面71上を移動可能な状態となる。プレイヤキャラクタ70は、プレイヤの操作入力に応じて、馬キャラクタ77に搭乗した状態で地面71上を移動する。プレイヤキャラクタ70は、馬キャラクタ77に搭乗している状態では、通常の状態よりも速く地面71上を移動することができる。なお、プレイヤキャラクタ70が馬キャラクタ77に搭乗している場合、馬キャラクタ77を示す選択画像76の表示態様が変化する。
【0092】
図10は、プレイヤキャラクタ70が地面上にいるときに鳥キャラクタ78に搭乗するシーンの一例を示す図である。
【0093】
プレイヤキャラクタ70が通常の状態において、ボタン33又は36を用いた選択操作により、複数の搭乗キャラクタのうちの何れかが選択される。具体的には、ボタン33又は36が押下されると、画面右下の選択画像76が切り替わる。ボタン33又は36が押下される毎に、選択中の搭乗キャラクタが切り替わり、選択中の搭乗キャラクタを示す画像が選択画像76として表示される。
【0094】
図10の上図に示されるように、鳥キャラクタ78を示す画像が選択画像76として表示されているときに、搭乗指示(例えば、プラスボタン57の押下)が行われた場合、鳥キャラクタ78が出現し、プレイヤキャラクタ70が鳥キャラクタ78に搭乗した状態となる。図10の下図では、プレイヤキャラクタ70が鳥キャラクタ78にぶら下がり、プレイヤキャラクタ70及び鳥キャラクタ78が空中に浮いており、地面71上に鳥キャラクタ78の影が投影されている。なお、プレイヤキャラクタ70が鳥キャラクタ78に搭乗している場合、鳥キャラクタ78を示す選択画像76の表示態様が変化する。
【0095】
プレイヤキャラクタ70が鳥キャラクタ78に搭乗した状態では、プレイヤキャラクタ70は、操作入力(例えば、アナログスティック32に対する入力)に応じて空中を移動することができる。このため、プレイヤキャラクタ70は、地形(地面71や水面74等)の影響を受けずに仮想空間内を移動することができる。また、プレイヤキャラクタ70が鳥キャラクタ78に搭乗している状態では、通常の状態よりも速く仮想空間内を移動することができる。
【0096】
なお、プレイヤキャラクタ70が鳥キャラクタ78に搭乗して空中にいるときでも、プレイヤは、ボタン33又は36を用いた選択操作により、搭乗キャラクタを選択することができる。プレイヤキャラクタ70が鳥キャラクタ78に搭乗しているときに、ボタン33又は36が押下されると、選択画像76が切り替わるとともに、搭乗キャラクタが切り替わる。例えば、プレイヤキャラクタ70が鳥キャラクタ78に搭乗中に、ボタン33又は36が押下されると、選択画像76が馬キャラクタ77を示す画像に切り替わるとともに、プレイヤキャラクタ70が搭乗する搭乗キャラクタが、鳥キャラクタ78から馬キャラクタ77に切り替わる。馬キャラクタ77に切り替わると、プレイヤキャラクタ70及び馬キャラクタ77は落下し、地面71に到達した場合に、プレイヤキャラクタ70はダメージを受ける。プレイヤキャラクタ70の落下中に再び鳥キャラクタ78に切り替えられると、プレイヤキャラクタ70及び鳥キャラクタ78は、落下せず、再び空中を移動可能な状態となる。
【0097】
また、プレイヤキャラクタ70が馬キャラクタ77に搭乗しているときに、ボタン33又は36を用いた選択操作により鳥キャラクタ78が選択された場合、馬キャラクタ77から鳥キャラクタ78への切り替えが行われ、プレイヤキャラクタ70は鳥キャラクタ78に搭乗した状態になる。
【0098】
図11は、プレイヤキャラクタ70が地面上でジャンプして鳥キャラクタ78に搭乗するシーンの一例を示す図である。
【0099】
図11の上図に示されるように、プレイヤキャラクタ70が通常の状態において、プレイヤの操作入力に基づいて、プレイヤキャラクタ70がジャンプ動作を行う。当該ジャンプ動作によってプレイヤキャラクタ70が地面71から離れ、一時的に空中にいる状態となる。プレイヤキャラクタ70が一時的に空中にいる間、図11の上図に示されるように、プレイヤキャラクタ70の近辺には、Aボタン53の押下を促す表示とともに、鳥キャラクタ78を示す表示が行われる。このとき、Aボタン53が押下されると、図11の下図に示されるように、鳥キャラクタ78が出現し、プレイヤキャラクタ70が鳥キャラクタ78に搭乗した状態となる。図11の上図に示されるように、選択画像76として、鳥キャラクタ78以外の搭乗キャラクタ(例えば、馬キャラクタ77)を示す画像が表示されているときでも、プレイヤキャラクタ70が空中にいるときにAボタン53が押下された場合には、プレイヤキャラクタ70は鳥キャラクタ78に搭乗する。すなわち、プレイヤキャラクタ70が空中にいるときは、搭乗キャラクタの選択操作が行われなくても、Aボタン53の押下に応じて、プレイヤキャラクタ70は鳥キャラクタ78に搭乗する。
【0100】
また、図示は省略するが、プレイヤキャラクタ70がジャンプ動作を行う場合に限らず、例えば、プレイヤキャラクタ70が崖から落下する場合でも、プレイヤキャラクタ70が空中にいるときには、Aボタン53の押下を促す表示とともに、鳥キャラクタ78を示す表示が行われる。このときにAボタン53が押下されると、プレイヤキャラクタ70は鳥キャラクタ78に搭乗する。
【0101】
図12は、プレイヤキャラクタ70が水中にいるときに魚キャラクタ79に搭乗するシーンの一例を示す図である。
【0102】
プレイヤキャラクタ70が地面71から水面74の領域に移動した場合、図12の上図に示されるように、プレイヤキャラクタ70の一部が水中に入り、魚キャラクタ79が選択可能となる。プレイヤキャラクタ70が通常の状態において水中にいるときには、水上用搭乗キャラクタとしての魚キャラクタ79のみ選択可能、もしくは、水上用搭乗キャラクタに加えて、空中用搭乗キャラクタも選択可能である。例えば、プレイヤキャラクタ70が水中に入った場合に、画面右下の選択画像76として魚キャラクタ79を示す画像が表示され、魚キャラクタ79が選択された状態になる。このとき、ボタン33又は36を用いた選択操作が不可能であり、魚キャラクタ79のみ選択可能に構成されてもよい。あるいは、プレイヤキャラクタ70が水中に入った場合に、図12の上図のように、初期的に選択画像76として魚キャラクタ79を示す画像が表示されて、魚キャラクタ79が選択された状態になり、その状態でボタン33又は36を用いた選択操作が行われた場合に、空中用搭乗キャラクタが選択されてもよい。さらに、プレイヤキャラクタ70が通常の状態において水中にいるときには、プレイヤキャラクタ70の近辺に、Aボタン53の押下を促す表示とともに、魚キャラクタ79を示す表示が行われる。この状態で、搭乗指示(プラスボタン57の押下)、又は、Aボタン53の押下が行われると、図12の下図に示されるように、魚キャラクタ79が出現し、プレイヤキャラクタ70が魚キャラクタ79に搭乗した状態となる。なお、プレイヤキャラクタ70が通常の状態において水中にいるときに、水上用搭乗キャラクタ、地上用搭乗キャラクタ、空中用搭乗キャラクタ、及び、崖面用搭乗キャラクタのうちの何れかを選択可能とするようにしてもよい。また、複数種類の搭乗キャラクタのうち、水上用搭乗キャラクタが優先的に(初期的に)選択されるようにしてもよい。
【0103】
プレイヤキャラクタ70が魚キャラクタ79に搭乗した状態では、プレイヤキャラクタ70は、水上又は水中を移動することができる。プレイヤキャラクタ70が魚キャラクタ79に搭乗していない場合において水中にいるときには、プレイヤキャラクタ70は所定のダメージを受けるが、プレイヤキャラクタ70が魚キャラクタ79に搭乗している場合には、プレイヤキャラクタ70はダメージを受けない。また、プレイヤキャラクタ70が魚キャラクタ79に搭乗しているときは、プレイヤキャラクタ70が通常の状態で地面71上にいるときよりも速く仮想空間内を移動することができる。
【0104】
プレイヤキャラクタ70を魚キャラクタ79に搭乗させることで、プレイヤキャラクタ70を水上又は水中において移動させることができる。また、プレイヤキャラクタ70が水中にいるときには、Aボタン53を押下するだけでプレイヤキャラクタ70を魚キャラクタ79に搭乗させることができ、プレイヤキャラクタ70にダメージが加わることを防止することができる。
【0105】
なお、プレイヤキャラクタ70が魚キャラクタ79に搭乗しているときに、ボタン33又は36を用いた選択操作により鳥キャラクタ78が選択された場合、魚キャラクタ79から鳥キャラクタ78への切り替えが行われ、プレイヤキャラクタ70は鳥キャラクタ78に搭乗した状態になる。
【0106】
図13は、プレイヤキャラクタ70が崖面75の近傍にいるときに崖面用搭乗キャラクタ80に搭乗するシーンの一例を示す図である。
【0107】
図13の上図に示されるように、プレイヤキャラクタ70が崖面75に向かって移動する場合、プレイヤキャラクタ70の近辺に、Aボタン53の押下を促す表示とともに、崖面用搭乗キャラクタ80を示す表示が行われる。具体的には、プレイヤキャラクタ70が崖面75の近傍に位置し、プレイヤキャラクタ70の前方に崖面75がある場合、Aボタン53の押下を促す表示とともに崖面用搭乗キャラクタを示す表示が行われる。このときに、Aボタン53が押下されると、崖面用搭乗キャラクタ80が出現し、図13の下図に示されるように、プレイヤキャラクタ70は崖面用搭乗キャラクタ80に搭乗した状態となる。プレイヤキャラクタ70が崖面用搭乗キャラクタ80に搭乗すると、崖面用搭乗キャラクタ80が崖面75に掴まった状態となる。この状態で、崖面を上るための操作入力が行われると、プレイヤキャラクタ70及び崖面用搭乗キャラクタ80は、崖面75を上る動作を行う。また、崖面用搭乗キャラクタ80が崖面75に掴まった状態で、崖面を下るための操作入力が行われると、プレイヤキャラクタ70及び崖面用搭乗キャラクタ80は、崖面75を下る動作を行う。なお、プレイヤキャラクタ70は、通常の状態では、崖面75上に存在し続けることはできず、崖面75に沿って落下する。
【0108】
また、図13の上図において、プレイヤは、ボタン33又は36を用いて、崖面用搭乗キャラクタ80を選択することができる。崖面用搭乗キャラクタ80が選択されているときに搭乗指示(プラスボタン57の押下)が行われると、プレイヤキャラクタ70は崖面用搭乗キャラクタ80に搭乗した状態となる。このとき、図13の下図に示されるように、崖面用搭乗キャラクタ80が崖面75に掴まった状態となる。
【0109】
なお、プレイヤは、崖面75の近傍以外の地面71上においても、ボタン33又は36を用いた選択操作により、崖面用搭乗キャラクタ80を選択し、プレイヤキャラクタ70を崖面用搭乗キャラクタ80に搭乗させることができる。プレイヤキャラクタ70が崖面用搭乗キャラクタ80に搭乗した状態で、プレイヤキャラクタ70及び崖面用搭乗キャラクタ80は、地面71上を移動することができる。プレイヤキャラクタ70及び崖面用搭乗キャラクタ80が崖面75に近づいた場合において、崖面を上るための操作入力が行われると、プレイヤキャラクタ70及び崖面用搭乗キャラクタ80は、崖面75を上る動作を開始する。
【0110】
以上のように、本実施形態では、プレイヤは、ボタン33又は36を用いた選択操作により、複数の搭乗キャラクタの中から何れかを選択し、搭乗指示に応じて、プレイヤキャラクタ70を、選択した搭乗キャラクタに搭乗させることができる。そして、プレイヤキャラクタ70が搭乗キャラクタに搭乗した状態で、プレイヤキャラクタ70を仮想空間内で移動させることができる。
【0111】
(搭乗キャラクタの切り替え)
次に、選択中の搭乗キャラクタから別の搭乗キャラクタへの切り替えについて説明する。
【0112】
図14は、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗している状態から地上用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図である。
【0113】
図14の上図に示されるように、プレイヤキャラクタ70が鳥キャラクタ78に搭乗して空中を移動しているときに、プレイヤキャラクタ70及び鳥キャラクタ78が地面71に近づく。プレイヤキャラクタ70及び鳥キャラクタ78が地面71に着く際に、プレイヤキャラクタ70が鳥キャラクタ78に搭乗している状態から、プレイヤキャラクタ70が馬キャラクタ77に搭乗している状態に自動的に切り替わる。すなわち、プレイヤキャラクタ70が地面71に向かって移動する場合、プレイヤキャラクタ70が搭乗する搭乗キャラクタが、鳥キャラクタ78から馬キャラクタ77に自動的に切り替わる。また、選択画像76も、鳥キャラクタ78を示す画像から馬キャラクタ77を示す画像に自動的に切り替わる。そして、プレイヤキャラクタ70は、馬キャラクタ77に搭乗した状態となり、地面71上を移動可能となる。
【0114】
このように、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗している場合において、プレイヤキャラクタ70が地面71に向かって移動する場合には、プレイヤキャラクタ70が馬キャラクタ77に搭乗した状態に自動的に切り替わる。プレイヤによる選択操作が無くても、プレイヤキャラクタ70が搭乗する搭乗キャラクタを空中用搭乗キャラクタから地上用搭乗キャラクタに自動的に変更することができる。このため、空中での移動から地上での移動にスムーズに切り替えることができ、シームレスな移動を行うことができる。
【0115】
図15は、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗している状態から水上用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図である。
【0116】
図15の上図に示されるように、プレイヤキャラクタ70が鳥キャラクタ78に搭乗して空中を移動しているときに、プレイヤキャラクタ70及び鳥キャラクタ78が水面74に近づく。プレイヤキャラクタ70が水面74に着く際に、プレイヤキャラクタ70が鳥キャラクタ78に搭乗している状態から、プレイヤキャラクタ70が魚キャラクタ79に搭乗している状態に自動的に切り替わる。すなわち、プレイヤキャラクタ70が搭乗する搭乗キャラクタが、鳥キャラクタ78から魚キャラクタ79に自動的に切り替わる。また、選択画像76も、鳥キャラクタ78を示す画像から魚キャラクタ79を示す画像に自動的に切り替わる。そして、プレイヤキャラクタ70は、魚キャラクタ79に搭乗した状態となり、水上又は水中を移動可能となる。
【0117】
このように、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗している場合において、プレイヤキャラクタ70が水面74に向かって移動する場合、プレイヤキャラクタ70が魚キャラクタ79に搭乗した状態に自動的に切り替わる。プレイヤによる選択操作が無くても、プレイヤキャラクタ70が搭乗する搭乗キャラクタを空中用搭乗キャラクタから水上用搭乗キャラクタに自動的に変更することができる。このため、空中での移動から水上又は水中での移動にスムーズに切り替えることができ、シームレスな移動を行うことができる。
【0118】
図16は、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗している状態から水上用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図である。
【0119】
図16の上図に示されるように、プレイヤキャラクタ70が馬キャラクタ77に搭乗して地面71上を移動しているときに、プレイヤキャラクタ70及び馬キャラクタ77が水面74に近づく。プレイヤキャラクタ70が水面74の領域に入る際に、プレイヤキャラクタ70が馬キャラクタ77に搭乗している状態から、プレイヤキャラクタ70が魚キャラクタ79に搭乗している状態に自動的に切り替わる。すなわち、プレイヤキャラクタ70が搭乗する搭乗キャラクタが、馬キャラクタ77から魚キャラクタ79に自動的に切り替わる。また、選択画像76も、馬キャラクタ77を示す画像から魚キャラクタ79を示す画像に自動的に切り替わる。そして、プレイヤキャラクタ70は、魚キャラクタ79に搭乗した状態となり、水上又は水中を移動可能となる。
【0120】
このように、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗している場合において、プレイヤキャラクタ70が水面74に向かって移動する場合、プレイヤキャラクタ70が魚キャラクタ79に搭乗した状態に自動的に切り替わる。プレイヤによる選択操作が無くても、プレイヤキャラクタ70が搭乗する搭乗キャラクタを地上用搭乗キャラクタから水上用搭乗キャラクタに自動的に変更することができる。このため、地上での移動から水上又は水中での移動にスムーズに切り替えることができ、シームレスな移動を行うことができる。
【0121】
また、プレイヤキャラクタ70が水上用搭乗キャラクタに搭乗している場合において、水上又は水中から地面71に向かって移動する場合は、図16とは逆である。すなわち、プレイヤキャラクタ70が水上用搭乗キャラクタに搭乗して水上又は水中で移動しているときに、プレイヤキャラクタ70が地面71に近づいて地面71の領域に入る際に、水上用搭乗キャラクタから地上用搭乗キャラクタへの切り替えが自動的に行われる。
【0122】
なお、複数種類の地上用搭乗キャラクタのうち、直前に地面71上でプレイヤキャラクタ70が搭乗していた搭乗キャラクタに自動的に切り替えられる。例えば、図16のように、プレイヤキャラクタ70が搭乗キャラクタに搭乗して地面71から水面74に移動した後、水面74から地面71に戻るときには、魚キャラクタ79から馬キャラクタ77に自動的に切り替えられる。
【0123】
これにより、プレイヤキャラクタ70が地上から水上に移動したり、水上から地上に移動したりする場合に、選択操作が無くても搭乗キャラクタの切り替えを行うことができ、異なる地形間の移動をシームレスに、スムーズに行うことができる。
【0124】
以上のように、本実施形態では、地形に応じた複数種類の搭乗キャラクタが用意され、プレイヤは、選択操作によって複数種類の搭乗キャラクタの中から何れかを選択し、搭乗指示に応じて、選択した搭乗キャラクタにプレイヤキャラクタ70を搭乗させる。プレイヤキャラクタ70は、搭乗キャラクタに搭乗した状態で仮想空間を移動することができる。プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗している場合において、空中から地面71又は水面74に移動するときには、移動先の地形に応じた搭乗キャラクタに自動的に切り替えられる。また、プレイヤキャラクタ70が搭乗キャラクタに搭乗している場合において、地面71から水面74に移動するときや、水面74から地面71に移動するときにも、移動先の地形に応じた搭乗キャラクタに自動的に切り替えられる。これにより、プレイヤキャラクタ70がいる地形に応じて搭乗キャラクタを変化させることができ、異なる地形間の移動をスムーズに行うことができる。
【0125】
なお、仮想空間は、様々な種類の地形(地面、水面、崖面等)に分けられており、プレイヤキャラクタ70の仮想空間における位置に基づいて、プレイヤキャラクタ70が、何れの地形(地面71、水面74、崖面75)にいるのか、空中にいるのかが判定される。当該判定結果に基づいて、例えば、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗して空中にいる状態から、地面71上にいる状態に変化した場合に、地上用搭乗キャラクタへの自動的な切り替えが行われる。また、例えば、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗して地面71上にいる状態から、水面74にいる状態に変化した場合に、水上用搭乗キャラクタへの自動的な切り替えが行われる。
【0126】
なお、搭乗キャラクタを自動的に切り替えるタイミングや条件は上記に限られない。例えば、プレイヤキャラクタ70と地形との距離を算出し、当該距離に基づいて、搭乗キャラクタの自動的な切り替えが行われてもよい。例えば、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗して空中にいる状態において、プレイヤキャラクタ70と地面71との距離が所定値未満になった場合に、地上用搭乗キャラクタへの自動的な切り替えが行われてもよい。また、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗して地面71上にいる状態において、プレイヤキャラクタ70と水面74との距離が所定値未満になった場合、水上用搭乗キャラクタへの自動的な切り替えが行われてもよい。
【0127】
次に、プレイヤキャラクタ70が搭乗キャラクタに搭乗している状態で、崖面へ移動する場合について説明する。
【0128】
図17は、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗している状態から崖面用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図である。図18は、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗している状態から崖面用搭乗キャラクタに搭乗している状態に切り替わるシーンの一例を示す図である。
【0129】
図17の上図に示されるように、プレイヤキャラクタ70が馬キャラクタ77に搭乗して地面71上を移動しているときに、プレイヤキャラクタ70及び馬キャラクタ77が崖面75に近づく。プレイヤキャラクタ70及び馬キャラクタ77が崖面75に向かってさらに移動しようとしても、それ以上は進むことはできず、馬キャラクタ77から崖面用搭乗キャラクタ80への自動的な切り替えは行われない。プレイヤキャラクタ70が崖面75の近傍に位置し、崖面75を向いている場合、Aボタン53の押下を促す表示とともに、崖面用搭乗キャラクタ80を示す表示が行われる。ここで、Aボタン53が押下されると、崖面用搭乗キャラクタ80が出現し、図17の下図に示されるように、プレイヤキャラクタ70は崖面用搭乗キャラクタ80に搭乗した状態となる。この状態で、崖面75を上る操作入力が行われた場合、プレイヤキャラクタ70及び崖面用搭乗キャラクタ80は崖面75を上る動作を行う。
【0130】
プレイヤキャラクタ70が鳥キャラクタ78に搭乗して空中を移動しているときも同様である。図18の上図に示されるように、プレイヤキャラクタ70が鳥キャラクタ78に搭乗して空中を移動しているときに、プレイヤキャラクタ70及び鳥キャラクタ78が崖面75に近づく。プレイヤキャラクタ70及び鳥キャラクタ78が崖面75に向かってさらに移動しようとしても、それ以上は進むことはできず、鳥キャラクタ78から崖面用搭乗キャラクタ80への自動的な切り替えは行われない。プレイヤキャラクタ70が崖面75の近傍に位置し、崖面75を向いている場合、Aボタン53の押下を促す表示とともに、崖面用搭乗キャラクタ80を示す表示が行われる。ここで、Aボタン53が押下されると、崖面用搭乗キャラクタ80が出現し、図18の下図に示されるように、プレイヤキャラクタ70は崖面用搭乗キャラクタ80に搭乗した状態となる。
【0131】
また、図示は省略するが、水面74(例えば川)と崖面75とが隣接する地形において、プレイヤキャラクタ70が魚キャラクタ79に搭乗して水上又は水中を移動しているときも同様である。すなわち、プレイヤキャラクタ70が魚キャラクタ79に搭乗して水上又は水中を移動しているときに、プレイヤキャラクタ70及び魚キャラクタ79が崖面75に近づいても、魚キャラクタ79から崖面用搭乗キャラクタ80への自動的な切り替えは行われない。プレイヤキャラクタ70が崖面75の近傍に位置し、崖面75を向いている場合、Aボタン53の押下を促す表示とともに、崖面用搭乗キャラクタ80を示す表示が行われる。ここで、Aボタン53が押下されると、崖面用搭乗キャラクタ80が出現し、プレイヤキャラクタ70は崖面用搭乗キャラクタ80に搭乗した状態となる。
【0132】
以上のように、本実施形態では、プレイヤキャラクタ70が搭乗キャラクタに搭乗している状態において、プレイヤキャラクタ70が崖面75に近づいても、崖面用搭乗キャラクタ80への自動的な切り替えは行われず、操作入力に応じて、崖面用搭乗キャラクタ80への切り替えが行われる。仮に、例えばプレイヤキャラクタ70が空中で移動しているときに、崖面75に近づいた場合に、自動的にプレイヤキャラクタ70が崖面用搭乗キャラクタ80に搭乗するようにすると、空中での移動から崖面75上での移動に突然切り替わってしまう。このような突然の切り替わりは、プレイヤキャラクタ70の空中での移動を妨げる可能性があり、プレイヤの意図した通りにプレイヤキャラクタ70を仮想空間内で移動させることができなくなる可能性がある。このため、本実施形態では、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗して空中を移動中に、プレイヤキャラクタ70が崖面75に向かって移動しようとしているときは、崖面用搭乗キャラクタ80への自動的な切り替えは行わず、操作入力に応じて切り替えを行うように構成されている。これにより、プレイヤの意図した通りに、プレイヤキャラクタ70を空中で移動させることができるとともに、操作入力に応じて空中から崖面に移行させることができる。プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗している場合や、水上用搭乗キャラクタに搭乗している場合も同様である。
【0133】
また、プレイヤキャラクタ70が、空中用搭乗キャラクタ、地上用搭乗キャラクタ、又は、水上用搭乗キャラクタに搭乗中に、崖面75に近づいた場合は、崖面用搭乗キャラクタ80への搭乗を促す表示(Aボタン53の押下を促す表示、崖面用搭乗キャラクタ80を示す表示)が行われる。これにより、プレイヤキャラクタ70が崖面用搭乗キャラクタ80に搭乗して崖面75を上ることが可能であることを、プレイヤに認識させることができ、崖面75上での移動を促進することができる。
【0134】
なお、崖面用搭乗キャラクタ80への搭乗を促す表示は、プレイヤキャラクタ70の位置及び向きに基づいて行われる。例えば、プレイヤキャラクタ70と崖面75との距離が所定値未満であり、かつ、プレイヤキャラクタ70が崖面75を向いている場合、崖面用搭乗キャラクタ80への搭乗を促す表示が行われる。当該表示が行われているときに、Aボタン53が押下された場合、プレイヤキャラクタ70は崖面用搭乗キャラクタ80に搭乗し、崖面75を上る姿勢となる。なお、プレイヤキャラクタ70の下方に崖面75が存在する場合は、プレイヤキャラクタ70が崖面75と反対方向を向いている場合に、崖面用搭乗キャラクタ80への搭乗を促す表示が行われる。当該表示が行われているときに、Aボタン53が押下された場合、プレイヤキャラクタ70は崖面用搭乗キャラクタ80に搭乗し、崖面75を下る姿勢となる。
【0135】
なお、搭乗キャラクタの自動的な切り替えが行われるときには、搭乗キャラクタの切り替えを示すエフェクト画像が表示されてもよいし、効果音が出力されてもよい。また、操作入力に応じて、プレイヤキャラクタ70が搭乗キャラクタに搭乗される場合や、搭乗キャラクタの切り替えが行われる場合にも、エフェクト画像が表示されたり、効果音が出力されてもよい。
【0136】
(ゲーム処理の詳細)
次に、本体装置2において行われるゲーム処理の一例について具体的に説明する。まず、本体装置2に記憶されるデータについて説明する。
【0137】
図19は、本体装置2のメモリ(主にDRAM85)に記憶されるデータの一例を示す図である。図19に示されるように、本体装置2には、ゲームプログラムと、操作データと、所有キャラクタデータと、プレイヤキャラクタデータとが記憶される。これらの他にも、仮想空間に出現する敵キャラクタ、ゲームに用いられるアイテム等、様々なデータが記憶される。
【0138】
ゲームプログラムは、本実施形態のゲームを実行するためのプログラムである。ゲームプログラムは、例えば外部記憶媒体に記憶されており、ゲームが開始されると、外部記憶媒体からDRAM85に読み込まれる。
【0139】
操作データは、コントローラ(左コントローラ3及び右コントローラ4)から本体装置2に送信されたプレイヤの操作入力に応じたデータである。操作データは、コントローラから本体装置2に所定の時間間隔(例えば、1/200秒間隔)で送信される。
【0140】
所有キャラクタデータは、プレイヤキャラクタ70が所有しているキャラクタに関するデータであり、所有している各キャラクタの名称や形状等に関するデータを含む。上述のように、プレイヤキャラクタ70は、仮想空間において敵キャラクタに遭遇し、当該敵キャラクタとの戦闘において所定の条件が満たされた場合に、当該敵キャラクタを取得する。取得されたキャラクタは、所有キャラクタデータとしてメモリに記憶される。なお、キャラクタは、戦闘以外の他の方法により、プレイヤキャラクタ70に取得されてもよい。例えば、プレイヤキャラクタ70が仮想空間に存在するキャラクタに話しかけた場合に当該キャラクタが取得されてもよい。また、プレイヤキャラクタ70が所定のミッションに成功した場合に、キャラクタが取得されてもよい。また、ゲーム内通貨や現実の通貨を消費することによってキャラクタが取得されてもよい。
【0141】
所有キャラクタデータは、搭乗キャラクタデータと、非搭乗キャラクタデータとを含む。搭乗キャラクタデータは、プレイヤキャラクタ70が搭乗することができる搭乗キャラクタを示すデータである。非搭乗キャラクタデータは、プレイヤキャラクタ70が搭乗することができない非搭乗キャラクタを示すデータである。
【0142】
上述のように、搭乗キャラクタには、1又は複数種類の地上用搭乗キャラクタと、1又は複数種類の空中用搭乗キャラクタと、1又は複数種類の水上用搭乗キャラクタと、1又は複数種類の崖面用搭乗キャラクタとが含まれる。
【0143】
プレイヤキャラクタデータは、プレイヤキャラクタ70に関するデータであり、プレイヤキャラクタ70の位置を示す位置データと、プレイヤキャラクタ70の向きを示す向きデータとを含む。また、プレイヤキャラクタデータは、状態データを含む。これらの他にも、プレイヤキャラクタデータは、プレイヤキャラクタ70形状に関する形状データを含む。
【0144】
状態データは、プレイヤキャラクタ70の状態を示すデータであり、プレイヤキャラクタ70が、現在、搭乗キャラクタに搭乗しているか否かのデータと、搭乗している場合の搭乗キャラクタの種類を示すデータとを含む。また、状態データは、プレイヤキャラクタ70の過去の状態を示すデータを含む。具体的には、過去の状態を示すデータとして、プレイヤキャラクタ70が直前に搭乗していた搭乗キャラクタの種類を示すデータが記憶される。例えば、プレイヤキャラクタ70が、地面71上で馬キャラクタ77に搭乗し、次に、搭乗キャラクタを鳥キャラクタ78に変更して、現在、鳥キャラクタ78に搭乗している場合を想定する。この場合は、状態データには、現在の状態を示すデータとして、鳥キャラクタ78に搭乗していることを示すデータと、過去の状態を示すデータとして、馬キャラクタ77を示すデータとが含まれる。
【0145】
(ゲーム処理のフローチャート)
次に、本体装置2において行われるゲーム処理の詳細について説明する。図20は、本体装置2のプロセッサ81において行われるゲーム処理の一例を示すフローチャートである。なお、図20では、上述した搭乗キャラクタに関する処理が主に示されており、所有キャラクタを取得する処理や戦闘に関する処理、その他の処理は省略されている。
【0146】
図20に示されるように、プロセッサ81は、まず、初期処理を行う(ステップS100)。初期処理では、仮想空間が設定され、仮想空間に、地面71、水面74、崖面75等の地形が配置される。また、仮想空間には、プレイヤキャラクタ70が配置される。また、プレイヤキャラクタ70に対応付けて記憶された所有キャラクタに関するデータが、メモリに読み込まれる。
【0147】
ステップS100の処理の後、プロセッサ81は、ステップS101の処理を実行する。以降、プロセッサ81は、ステップS101~ステップS107の処理を、所定のフレーム時間(例えば、1/60秒)毎に繰り返し実行する。
【0148】
ステップS101において、プロセッサ81は、コントローラからの操作データを取得する。
【0149】
次に、ステップS102において、プロセッサ81は、操作データに基づいて、アクション処理を行う。例えば、プロセッサ81は、所定の操作入力が行われた場合、プレイヤキャラクタ70にジャンプ動作を行わせる。これにより、プレイヤキャラクタ70は、一時的に空中にいる状態となる。なお、プレイヤキャラクタ70が搭乗キャラクタに搭乗しているときには、プレイヤキャラクタ70は搭乗キャラクタに搭乗している状態でジャンプ動作を行う。すなわち、プレイヤキャラクタ70とともに搭乗キャラクタもジャンプ動作を行い、一時的に空中にいる状態となる。次に、プロセッサ81は、ステップS103の処理を行う。
【0150】
ステップS103において、プロセッサ81は、プレイヤキャラクタ70が搭乗キャラクタに搭乗中か否かを判定する。プロセッサ81は、ステップS103でNOと判定した場合は、次にステップS104の通常状態処理を行い、ステップS103でYESと判定した場合は、次にステップS105の搭乗中処理を行う。ステップS104及びステップS105の処理については後述する。
【0151】
ステップS104又はステップS105の処理を行った後、プロセッサ81は、ステップS106において、画像表示処理を行う。具体的には、プロセッサ81は、仮想空間に配置された仮想カメラに基づいて、プレイヤキャラクタ70を含む仮想空間の画像を生成する。これにより、ステップS101~ステップS105の処理の結果に基づくゲーム画像が表示装置に表示される。次に、プロセッサ81は、ステップS107の処理を行う。
【0152】
ステップS107において、プロセッサ81は、ゲームを終了するか否かを判定する。プロセッサ81は、例えば、プレイヤによってゲームの終了が指示された場合、ステップS107でYESと判定し、図20に示すゲーム処理を終了する。ステップS107でNOと判定した場合、プロセッサ81は、ステップS101の処理を再び実行する。
【0153】
(通常状態処理)
次に、ステップS104の通常状態処理の詳細について説明する。図21は、ステップS104の通常状態処理の一例を示すフローチャートである。
【0154】
ステップS200において、プロセッサ81は、プレイヤキャラクタ70を移動させる移動処理を行う。具体的には、プロセッサ81は、プレイヤによる方向入力(例えば、アナログスティック32に対する操作入力)に基づいて、プレイヤキャラクタ70を仮想空間内で移動させる。なお、仮想空間の下方向に働く重力の影響を考慮して、移動処理が行われる。例えば、プレイヤキャラクタ70が空中にいる場合は、プレイヤキャラクタ70は、重力の影響によって下方向に移動される。次に、プロセッサ81は、ステップS201の処理を行う。
【0155】
ステップS201において、プロセッサ81は、搭乗キャラクタを選択するための選択操作(例えば、ボタン33又は36の押下)が行われたか否かを判定する。プロセッサ81は、ステップS201でYESと判定した場合は、次にステップS202の処理を行い、ステップS201でNOと判定した場合は、次にステップS203の処理を行う。
【0156】
ステップS202において、プロセッサ81は、選択中の搭乗キャラクタ(選択キャラクタ)を変更する。また、プロセッサ81は、選択キャラクタを示す画像を選択画像76として画面右下の領域に表示させる。プレイヤキャラクタ70の位置に応じて、プレイヤが選択可能な搭乗キャラクタが異なるように構成される。例えば、プレイヤキャラクタ70が地面71上にいる場合、プレイヤは、地上用搭乗キャラクタ、空中用搭乗キャラクタ、及び、崖面用搭乗キャラクタを選択可能である。また、プレイヤキャラクタ70が水面74の領域にいる場合、プレイヤは、水上用搭乗キャラクタ、及び、空中用搭乗キャラクタを選択可能である。また、プレイヤキャラクタ70が空中にいる場合、プレイヤは、空中用搭乗キャラクタ、及び、地上用搭乗キャラクタを選択可能である。また、プレイヤキャラクタ70が崖面75にいる場合、プレイヤは、崖面用搭乗キャラクタ、地上用搭乗キャラクタ、及び、空中用搭乗キャラクタを選択可能である。ここでは、複数の選択可能な搭乗キャラクタのうちの何れかが選択される。
【0157】
ステップS203において、プロセッサ81は、プレイヤキャラクタ70を選択キャラクタに搭乗させるための搭乗指示(例えば、プラスボタン57の押下)が行われたか否かを判定する。プロセッサ81は、ステップS203でYESと判定した場合は、次にステップS204の処理を行い、ステップS203でNOと判定した場合は、次にステップS205の処理を行う。
【0158】
ステップS204において、プロセッサ81は、プレイヤキャラクタ70をステップS204で変更された選択キャラクタに搭乗させる。例えば、プレイヤキャラクタ70が地面71上にいる場合において、選択キャラクタとして馬キャラクタ77が選択されている場合、プレイヤキャラクタ70を馬キャラクタ77に搭乗させる。また、プレイヤキャラクタ70が地面71上にいる場合において、選択キャラクタとして鳥キャラクタ78が選択されている場合、プレイヤキャラクタ70を鳥キャラクタ78に搭乗させる。また、プレイヤキャラクタ70が水面74にいる場合において、選択キャラクタとして魚キャラクタ79が選択されている場合、プレイヤキャラクタ70を魚キャラクタ79に搭乗させる。プレイヤキャラクタ70が地面71上にいる場合において、選択キャラクタとして崖面用搭乗キャラクタ80が選択されている場合、プレイヤキャラクタ70を崖面用搭乗キャラクタ80に搭乗させる。プロセッサ81は、ステップS204の処理を行った場合、図21の通常状態処理を終了する。
【0159】
一方、ステップS205において、プロセッサ81は、プレイヤキャラクタ70が空中にいるか否かを判定する。プロセッサ81は、ステップS205でYESと判定した場合は、次にステップS206の処理を行い、ステップS205でNOと判定した場合は、次にステップS208の処理を行う。なお、プロセッサ81は、ステップS205でYESと判定した場合、Aボタン53の押下を促す表示とともに、空中用搭乗キャラクタ(例えば、鳥キャラクタ78)を示す表示を行う(図11参照)。
【0160】
ステップS206において、プロセッサ81は、Aボタン53が押下されたか否かを判定する。プロセッサ81は、ステップS206でYESと判定した場合は、次にステップS207の処理を行い、ステップS206でNOと判定した場合は、図21の通常状態処理を終了する。
【0161】
ステップS207において、プロセッサ81は、プレイヤキャラクタ70を空中用搭乗キャラクタに搭乗させる。これにより、プレイヤキャラクタ70は、空中用搭乗キャラクタ(例えば、鳥キャラクタ78)に搭乗して、空中を移動可能な状態となる。プロセッサ81は、ステップS207の処理を行った場合、図21の通常状態処理を終了する。
【0162】
一方、ステップS208において、プロセッサ81は、プレイヤキャラクタ70が水中にいるか否かを判定する。プロセッサ81は、ステップS208でYESと判定した場合は、次にステップS209の処理を行い、ステップS208でNOと判定した場合は、次にステップS212の処理を行う。なお、プロセッサ81は、ステップS208でYESと判定した場合、Aボタン53の押下を促す表示とともに、水上用搭乗キャラクタ(例えば、魚キャラクタ79)を示す表示を行う(図12参照)。
【0163】
ステップS209において、プロセッサ81は、プレイヤキャラクタ70に所定のダメージを与えるダメージ処理を行う。具体的には、ダメージ処理では、プレイヤキャラクタ70が水中に入ってからの経過時間が所定時間内である場合は、プレイヤキャラクタ70が水中を泳ぐ動作を行い、当該経過時間が所定時間を超えた場合は、プレイヤキャラクタ70が水中に沈み、プレイヤキャラクタ70にダメージが与えられる。プレイヤキャラクタ70にダメージが与えられた場合、直前の状態(プレイヤキャラクタ70が水中に入る前の状態。地上にいる状態)に戻される。なお、プレイヤキャラクタ70が水中にいる間、プレイヤキャラクタ70に継続的にダメージが加えられ、加えられたダメージが閾値を超えた場合、プレイヤキャラクタ70は水中に沈み、直前の状態に戻されてもよい。
【0164】
次に、ステップS210において、プロセッサ81は、Aボタン53が押下されたか否かを判定する。プロセッサ81は、ステップS210でYESと判定した場合は、次にステップS211の処理を行い、ステップS210でNOと判定した場合は、図21の通常状態処理を終了する。
【0165】
ステップS211において、プロセッサ81は、プレイヤキャラクタ70を水上用搭乗キャラクタに搭乗させる。これにより、プレイヤキャラクタ70は、水上用搭乗キャラクタ(例えば、魚キャラクタ79)に搭乗して、水上又は水中を移動可能な状態となる。プロセッサ81は、ステップS211の処理を行った場合、図21の通常状態処理を終了する。
【0166】
一方、ステップS212において、プロセッサ81は、プレイヤキャラクタ70が崖面75を向いているか否かを判定する。ここでは、プロセッサ81は、プレイヤキャラクタ70の位置及び向きに基づいて、プレイヤキャラクタ70が崖面75の近傍に位置し、かつ、崖面75を向いているか否かを判定する。プロセッサ81は、ステップS212でYESと判定した場合は、次にステップS213の処理を行い、ステップS212でNOと判定した場合は、図21の通常状態処理を終了する。なお、プロセッサ81は、ステップS212でYESと判定した場合、Aボタン53の押下を促す表示とともに、崖面用搭乗キャラクタ80を示す表示を行う(図13参照)。
【0167】
ステップS213において、プロセッサ81は、Aボタン53が押下されたか否かを判定する。プロセッサ81は、ステップS213でYESと判定した場合は、次にステップS214の処理を行い、ステップS213でNOと判定した場合は、図21の通常状態処理を終了する。
【0168】
ステップS214において、プロセッサ81は、プレイヤキャラクタ70を崖面用搭乗キャラクタ80に搭乗させる。これにより、プレイヤキャラクタ70は、崖面用搭乗キャラクタ80に搭乗して、崖面75上又は地面71上を移動可能な状態となる。プロセッサ81は、ステップS214の処理を行った場合、図21の通常状態処理を終了する。
【0169】
(搭乗中処理)
次に、ステップS105の搭乗中処理の詳細について説明する。図22は、ステップS105の搭乗中処理の一例を示すフローチャートである。
【0170】
ステップS300において、プロセッサ81は、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗中か否かを判定する。プロセッサ81は、ステップS300でYESと判定した場合は、次にステップS301の処理を行い、ステップS300でNOと判定した場合は、次にステップS302の処理を行う。
【0171】
ステップS301において、プロセッサ81は、空中キャラ搭乗中処理を行う。空中キャラ搭乗中処理は、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗しているときの処理である。空中キャラ搭乗中処理の詳細については後述する。プロセッサ81は、ステップS301の処理を行った場合、図22の搭乗中処理を終了する。
【0172】
ステップS302において、プロセッサ81は、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗中か否かを判定する。プロセッサ81は、ステップS302でYESと判定した場合は、次にステップS303の処理を行い、ステップS302でNOと判定した場合は、次にステップS304の処理を行う。
【0173】
ステップS303において、プロセッサ81は、地上キャラ搭乗中処理を行う。地上キャラ搭乗中処理は、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗しているときの処理である。地上キャラ搭乗中処理の詳細については後述する。プロセッサ81は、ステップS303の処理を行った場合、図22の搭乗中処理を終了する。
【0174】
ステップS304において、プロセッサ81は、プレイヤキャラクタ70が水上用搭乗キャラクタに搭乗中か否かを判定する。プロセッサ81は、ステップS304でYESと判定した場合は、次にステップS305の処理を行い、ステップS304でNOと判定した場合は、次にステップS306の処理を行う。
【0175】
ステップS305において、プロセッサ81は、水上キャラ搭乗中処理を行う。水上キャラ搭乗中処理は、プレイヤキャラクタ70が水上用搭乗キャラクタに搭乗しているときの処理である。水上キャラ搭乗中処理の詳細については後述する。プロセッサ81は、ステップS305の処理を行った場合、図22の搭乗中処理を終了する。
【0176】
ステップS306において、プロセッサ81は、崖面キャラ搭乗中処理を行う。崖面キャラ搭乗中処理は、プレイヤキャラクタ70が崖面用搭乗キャラクタに搭乗しているときの処理である。崖面キャラ搭乗中処理の詳細については後述する。プロセッサ81は、ステップS306の処理を行った場合、図22の搭乗中処理を終了する。
【0177】
(空中キャラ搭乗中処理)
次に、ステップS301の空中キャラ搭乗中処理の詳細について説明する。図23は、ステップS301の空中キャラ搭乗中処理の一例を示すフローチャートである。
【0178】
ステップS310において、プロセッサ81は、プレイヤキャラクタ70を空中用搭乗キャラクタとともに空中で移動させる移動処理を行う。具体的には、プロセッサ81は、プレイヤによる方向入力(例えば、アナログスティック32に対する操作入力)に基づいて、プレイヤキャラクタ70及び空中用搭乗キャラクタを空中で移動させる。プロセッサ81は、入力方向に応じて、プレイヤキャラクタ70及び空中用搭乗キャラクタを仮想空間内で上下左右方向に移動させる。次に、プロセッサ81は、ステップS311の処理を行う。
【0179】
ステップS311において、プロセッサ81は、選択操作(例えば、ボタン33又は36の押下)が行われたか否かを判定する。プロセッサ81は、ステップS311でYESと判定した場合は、次にステップS312の処理を行い、ステップS311でNOと判定した場合は、次にステップS313の処理を行う。
【0180】
ステップS312において、プロセッサ81は、搭乗中のキャラクタを変更する。プレイヤキャラクタ70が搭乗キャラクタに搭乗しているときには、搭乗指示が行われなくても、選択操作(例えばボタン33又は36の押下)に応じて選択キャラクタが変更され、プレイヤキャラクタ70が当該変更された選択キャラクタに搭乗した状態になる。また、変更された選択キャラクタを示す画像が選択画像76として表示される。例えば、ボタン33が1回押下された場合、馬キャラクタ77が選択され、プレイヤキャラクタ70が当該馬キャラクタ77に搭乗した状態になる。また、ボタン33がさらに1回押下された場合、馬キャラクタ77から別の地上用搭乗キャラクタに変更される。プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗した状態では、プレイヤキャラクタ70及び地上用搭乗キャラクタは、空中に存在し続けることはできず、落下する。プロセッサ81は、ステップS312の処理を行った場合、図23の空中キャラ搭乗中処理を終了する。
【0181】
ステップS313において、プロセッサ81は、プレイヤキャラクタ70及び空中用搭乗キャラクタが、地面71に向かって移動しているか否かを判定する。例えば、プロセッサ81は、プレイヤキャラクタ70の高さに基づいて、プレイヤキャラクタ70及び空中用搭乗キャラクタが地面71に着いたか否かを判定する。プロセッサ81は、ステップS313でYESと判定した場合は、次にステップS314の処理を行い、ステップS313でNOと判定した場合は、次にステップS315の処理を行う。
【0182】
ステップS314において、プロセッサ81は、搭乗中のキャラクタを地上用搭乗キャラクタ又は崖面用搭乗キャラクタに変更する。これにより、プレイヤキャラクタ70が搭乗しているキャラクタが、空中用搭乗キャラクタから地上用搭乗キャラクタ又は崖面用搭乗キャラクタに自動的に変更される。なお、本実施形態では、地上用搭乗キャラクタとして馬キャラクタ77を含む複数のキャラクタが用意される。また、崖面用搭乗キャラクタが複数用意されてもよい。ここでは、複数の地上用搭乗キャラクタ及び崖面用搭乗キャラクタのうち、状態データとして記憶された過去の状態を示すデータに応じたキャラクタに変更される。すなわち、直前に地面71上においてプレイヤキャラクタ70が搭乗していたキャラクタに、自動的に変更される。なお、地面71上を移動可能な複数の搭乗キャラクタ(地上用搭乗キャラクタ及び崖面用搭乗キャラクタ)のうち、ランダムに選択されたキャラクタに自動的に変更されてもよい。プロセッサ81は、ステップS314の処理を行った場合、図23の空中キャラ搭乗中処理を終了する。
【0183】
ステップS315において、プロセッサ81は、プレイヤキャラクタ70及び空中用搭乗キャラクタが、水面74に向かって移動しているか否かを判定する。例えば、プロセッサ81は、プレイヤキャラクタ70の高さに基づいて、プレイヤキャラクタ70及び空中用搭乗キャラクタが水面74に着いたか否かを判定する。プロセッサ81は、ステップS315でYESと判定した場合は、次にステップS316の処理を行い、ステップS315でNOと判定した場合は、次にステップS317の処理を行う。
【0184】
ステップS316において、プロセッサ81は、搭乗中のキャラクタを水上用搭乗キャラクタに変更する。これにより、プレイヤキャラクタ70が搭乗しているキャラクタが、空中用搭乗キャラクタから水上用搭乗キャラクタ(具体的には魚キャラクタ79)に自動的に変更される。なお、魚キャラクタ79を含む複数の水上用搭乗キャラクタが用意されてもよい。この場合、複数の水上用搭乗キャラクタのうちの何れかに自動的に変更される。例えば、複数の水上用搭乗キャラクタのうち、直前に水上においてプレイヤキャラクタ70が搭乗していたキャラクタに自動的に変更されてもよい。また、複数の水上用搭乗キャラクタのうち、ランダムに選択されたキャラクタに自動的に変更されてもよい。プロセッサ81は、ステップS316の処理を行った場合、図23の空中キャラ搭乗中処理を終了する。
【0185】
ステップS317において、プロセッサ81は、プレイヤキャラクタ70及び空中用搭乗キャラクタが、崖面75に向かって移動しているか否かを判定する。例えば、プロセッサ81は、プレイヤキャラクタ70の位置及び向きに基づいて、プレイヤキャラクタ70及び空中用搭乗キャラクタが崖面75の近傍に位置し、かつ、プレイヤキャラクタ70が崖面75を向いているか否かを判定する。プロセッサ81は、ステップS317でYESと判定した場合は、次にステップS318の処理を行い、ステップS317でNOと判定した場合は、図23の空中キャラ搭乗中処理を終了する。なお、プロセッサ81は、ステップS317でYESと判定した場合、Aボタン53の押下を促す表示とともに、崖面用搭乗キャラクタ80を示す表示を行う(図18参照)。
【0186】
ステップS318において、プロセッサ81は、Aボタン53が押下されたか否かを判定する。プロセッサ81は、ステップS318でYESと判定した場合は、次にステップS319の処理を行い、ステップS318でNOと判定した場合は、図23の空中キャラ搭乗中処理を終了する。
【0187】
ステップS319において、プロセッサ81は、搭乗中のキャラクタを崖面用搭乗キャラクタ80に変更する。これにより、プレイヤキャラクタ70は、崖面用搭乗キャラクタ80に搭乗して、崖面75を移動可能な状態となる。なお、複数の崖面用搭乗キャラクタが用意されてもよい。この場合、複数の崖面用搭乗キャラクタのうち、直前に崖面75においてプレイヤキャラクタ70が搭乗していたキャラクタに変更されてもよい。また、複数の崖面用搭乗キャラクタのうち、ランダムに選択されたキャラクタに自動的に変更されてもよい。プロセッサ81は、ステップS319の処理を行った場合、図23の空中キャラ搭乗中処理を終了する。
【0188】
(地上キャラ搭乗中処理)
次に、ステップS303の地上キャラ搭乗中処理の詳細について説明する。図24は、ステップS303の地上キャラ搭乗中処理の一例を示すフローチャートである。
【0189】
ステップS330において、プロセッサ81は、プレイヤキャラクタ70を、地上用搭乗キャラクタとともに地面71上で移動させる移動処理を行う。具体的には、プロセッサ81は、プレイヤによる方向入力(例えば、アナログスティック32に対する操作入力)に基づいて、プレイヤキャラクタ70及び地上用搭乗キャラクタを地面71上で移動させる。次に、プロセッサ81は、ステップS331の処理を行う。
【0190】
ステップS331において、プロセッサ81は、選択操作が行われたか否かを判定する。プロセッサ81は、ステップS331でYESと判定した場合は、次にステップS332の処理を行い、ステップS331でNOと判定した場合は、次にステップS333の処理を行う。
【0191】
ステップS332において、プロセッサ81は、搭乗中のキャラクタを変更する。例えば、プレイヤキャラクタ70が馬キャラクタ77に搭乗中に、ボタン33が1回押下された場合、馬キャラクタ77とは別の地上用搭乗キャラクタが選択され、プレイヤキャラクタ70が当該地上用搭乗キャラクタに搭乗した状態になる。また、ボタン33がさらに1回押下された場合、鳥キャラクタ78が選択され、プレイヤキャラクタ70が当該鳥キャラクタ78に搭乗した状態になる。プロセッサ81は、ステップS332の処理を行った場合、図24の地上キャラ搭乗中処理を終了する。
【0192】
ステップS333において、プロセッサ81は、プレイヤキャラクタ70及び地上用搭乗キャラクタが、水面74に向かって移動しているか否かを判定する。例えば、プロセッサ81は、プレイヤキャラクタ70の位置に基づいて、プレイヤキャラクタ70が水面74の領域に入ったか否かを判定する。プロセッサ81は、ステップS333でYESと判定した場合は、次にステップS334の処理を行い、ステップS333でNOと判定した場合は、次にステップS335の処理を行う。
【0193】
ステップS334において、プロセッサ81は、搭乗中のキャラクタを水上用搭乗キャラクタに変更する。これにより、プレイヤキャラクタ70が搭乗しているキャラクタが、地上用搭乗キャラクタから水上用搭乗キャラクタ(具体的には魚キャラクタ79)に自動的に変更される。なお、複数の水上用搭乗キャラクタが用意される場合、例えば、複数の水上用搭乗キャラクタのうち、直前に水上においてプレイヤキャラクタ70が搭乗していたキャラクタに自動的に変更されてもよい。また、複数の水上用搭乗キャラクタのうち、ランダムに選択されたキャラクタに自動的に変更されてもよい。プロセッサ81は、ステップS334の処理を行った場合、図24の地上キャラ搭乗中処理を終了する。
【0194】
ステップS335において、プロセッサ81は、プレイヤキャラクタ70及び地上用搭乗キャラクタが、空中にいるか否かを判定する。例えば、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗中に、ジャンプ動作が行われた場合、プレイヤキャラクタ70が地面71から離れて、一時的に空中にいる状態になる。また、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗中に、プレイヤキャラクタ70及び地上用搭乗キャラクタが崖から落ちた場合、プレイヤキャラクタ70は一時的に空中にいる状態になる。プロセッサ81は、ステップS335でYESと判定した場合は、次にステップS336の処理を行い、ステップS335でNOと判定した場合は、次にステップS338の処理を行う。なお、プロセッサ81は、ステップS335でYESと判定した場合、Aボタン53の押下を促す表示とともに、空中用搭乗キャラクタを示す表示を行う。
【0195】
ステップS336において、プロセッサ81は、Aボタン53が押下されたか否かを判定する。プロセッサ81は、ステップS336でYESと判定した場合は、次にステップS337の処理を行い、ステップS336でNOと判定した場合は、次にステップS338の処理を行う。
【0196】
ステップS337において、プロセッサ81は、搭乗中のキャラクタを空中用搭乗キャラクタに変更する。これにより、プレイヤキャラクタ70は、空中用搭乗キャラクタ(具体的には鳥キャラクタ78)に搭乗して、空中を移動可能な状態となる。なお、鳥キャラクタ78を含む複数の空中用搭乗キャラクタが用意されてもよい。この場合、例えば、複数の空中用搭乗キャラクタのうち、直前に空中においてプレイヤキャラクタ70が搭乗していたキャラクタに変更されてもよい。また、複数の空中用搭乗キャラクタのうち、ランダムに選択されたキャラクタに変更されてもよい。プロセッサ81は、ステップS337の処理を行った場合、図24の地上キャラ搭乗中処理を終了する。
【0197】
ステップS338において、プロセッサ81は、プレイヤキャラクタ70及び地上用搭乗キャラクタが、崖面75に向かって移動しているか否かを判定する。例えば、プロセッサ81は、プレイヤキャラクタ70の位置及び向きに基づいて、プレイヤキャラクタ70及び地上用搭乗キャラクタが崖面75の近傍に位置し、かつ、プレイヤキャラクタ70が崖面75を向いているか否かを判定する。プロセッサ81は、ステップS338でYESと判定した場合は、次にステップS339の処理を行い、ステップS338でNOと判定した場合は、図24の地上キャラ搭乗中処理を終了する。なお、プロセッサ81は、ステップS338でYESと判定した場合、Aボタン53の押下を促す表示とともに、崖面用搭乗キャラクタ80を示す表示を行う。
【0198】
ステップS339において、プロセッサ81は、Aボタン53が押下されたか否かを判定する。プロセッサ81は、ステップS339でYESと判定した場合は、次にステップS340の処理を行い、ステップS339でNOと判定した場合は、図24の地上キャラ搭乗中処理を終了する。
【0199】
ステップS340において、プロセッサ81は、搭乗中のキャラクタを崖面用搭乗キャラクタ80に変更する。これにより、プレイヤキャラクタ70は、崖面用搭乗キャラクタ80に搭乗して、崖面75又は地面71を移動可能な状態となる。プロセッサ81は、ステップS340の処理を行った場合、図24の地上キャラ搭乗中処理を終了する。
【0200】
(水上キャラ搭乗中処理)
次に、ステップS305の水上キャラ搭乗中処理の詳細について説明する。図25は、ステップS305の水上キャラ搭乗中処理の一例を示すフローチャートである。
【0201】
ステップS350において、プロセッサ81は、プレイヤキャラクタ70を水上用搭乗キャラクタとともに水上で移動させる移動処理を行う。具体的には、プロセッサ81は、プレイヤによる方向入力に基づいて、プレイヤキャラクタ70及び水上用搭乗キャラクタを水上又は水中で移動させる。次に、プロセッサ81は、ステップS351の処理を行う。
【0202】
ステップS351において、プロセッサ81は、選択操作が行われたか否かを判定する。プロセッサ81は、ステップS351でYESと判定した場合は、次にステップS352の処理を行い、ステップS351でNOと判定した場合は、次にステップS353の処理を行う。
【0203】
ステップS352において、プロセッサ81は、搭乗中のキャラクタを変更する。例えば、プレイヤキャラクタ70が魚キャラクタ79に搭乗中に、ボタン33が押下された場合、鳥キャラクタ78が選択され、プレイヤキャラクタ70が当該鳥キャラクタ78に搭乗した状態になる。プロセッサ81は、ステップS352の処理を行った場合、図25の水上キャラ搭乗中処理を終了する。
【0204】
ステップS353において、プロセッサ81は、プレイヤキャラクタ70及び水上用搭乗キャラクタが、地面71に向かって移動しているか否かを判定する。例えば、プロセッサ81は、プレイヤキャラクタ70の位置に基づいて、プレイヤキャラクタ70が地面71の領域に入ったか否かを判定する。プロセッサ81は、ステップS353でYESと判定した場合は、次にステップS354の処理を行い、ステップS353でNOと判定した場合は、次にステップS355の処理を行う。
【0205】
ステップS354において、プロセッサ81は、搭乗中のキャラクタを地上用搭乗キャラクタに変更する。これにより、プレイヤキャラクタ70が搭乗しているキャラクタが、水上用搭乗キャラクタから地上用搭乗キャラクタに自動的に変更される。なお、本実施形態では、地上用搭乗キャラクタとして馬キャラクタ77を含む複数のキャラクタが用意される。ここでは、複数の地上用搭乗キャラクタのうち、状態データとして記憶された過去の状態を示すデータに応じたキャラクタに変更される。すなわち、直前に地面71上においてプレイヤキャラクタ70が搭乗していた地上用搭乗キャラクタに、自動的に変更される。プロセッサ81は、ステップS354の処理を行った場合、図25の水上キャラ搭乗中処理を終了する。
【0206】
ステップS355において、プロセッサ81は、プレイヤキャラクタ70及び水上用搭乗キャラクタが、空中にいるか否かを判定する。例えば、プレイヤキャラクタ70が水上用搭乗キャラクタに搭乗中に、ジャンプ動作が行われた場合、プレイヤキャラクタ70及び水上用搭乗キャラクタが水面74から離れて、一時的に空中にいる状態になる。プロセッサ81は、ステップS355でYESと判定した場合は、次にステップS356の処理を行い、ステップS355でNOと判定した場合は、次にステップS358の処理を行う。なお、プロセッサ81は、ステップS355でYESと判定した場合、Aボタン53の押下を促す表示とともに、空中用搭乗キャラクタを示す表示を行う。
【0207】
ステップS356において、プロセッサ81は、Aボタン53が押下されたか否かを判定する。プロセッサ81は、ステップS356でYESと判定した場合は、次にステップS357の処理を行い、ステップS356でNOと判定した場合は、次にステップS358の処理を行う。
【0208】
ステップS357において、プロセッサ81は、搭乗中のキャラクタを空中用搭乗キャラクタに搭乗する。これにより、プレイヤキャラクタ70は、空中用搭乗キャラクタ(例えば、鳥キャラクタ78)に搭乗して、空中を移動可能な状態となる。プロセッサ81は、ステップS357の処理を行った場合、図25の水上キャラ搭乗中処理を終了する。
【0209】
ステップS358において、プロセッサ81は、プレイヤキャラクタ70及び水上用搭乗キャラクタが、崖面75に向かって移動しているか否かを判定する。例えば、プロセッサ81は、プレイヤキャラクタ70の位置及び向きに基づいて、プレイヤキャラクタ70及び水上用搭乗キャラクタが崖面75の近傍に位置し、かつ、プレイヤキャラクタ70が崖面75を向いているか否かを判定する。プロセッサ81は、ステップS358でYESと判定した場合は、次にステップS359の処理を行い、ステップS358でNOと判定した場合は、図25の水上キャラ搭乗中処理を終了する。なお、プロセッサ81は、ステップS358でYESと判定した場合、Aボタン53の押下を促す表示とともに、崖面用搭乗キャラクタ80を示す表示を行う。
【0210】
ステップS359において、プロセッサ81は、Aボタン53が押下されたか否かを判定する。プロセッサ81は、ステップS359でYESと判定した場合は、次にステップS360の処理を行い、ステップS359でNOと判定した場合は、図25の水上キャラ搭乗中処理を終了する。
【0211】
ステップS360において、プロセッサ81は、搭乗中のキャラクタを崖面用搭乗キャラクタ80に変更する。これにより、プレイヤキャラクタ70は、崖面用搭乗キャラクタ80に搭乗して、崖面75又は地面71を移動可能な状態となる。プロセッサ81は、ステップS360の処理を行った場合、図25の水上キャラ搭乗中処理を終了する。
【0212】
(崖面キャラ搭乗中処理)
次に、ステップS306の崖面キャラ搭乗中処理の詳細について説明する。図26は、ステップS306の崖面キャラ搭乗中処理の一例を示すフローチャートである。
【0213】
ステップS370において、プロセッサ81は、プレイヤキャラクタ70を、崖面用搭乗キャラクタとともに地面71又は崖面75上で移動させる移動処理を行う。具体的には、プロセッサ81は、プレイヤキャラクタ70が地面71上にいる場合、方向入力に基づいて、プレイヤキャラクタ70及び崖面用搭乗キャラクタを地面71上で移動させる。また、プロセッサ81は、プレイヤキャラクタ70が崖面75上にいる場合、操作入力に基づいて、プレイヤキャラクタ70及び崖面用搭乗キャラクタを崖面75において移動させる。次に、プロセッサ81は、ステップS371の処理を行う。
【0214】
ステップS371において、プロセッサ81は、選択操作が行われたか否かを判定する。プロセッサ81は、ステップS371でYESと判定した場合は、次にステップS372の処理を行い、ステップS371でNOと判定した場合は、次にステップS373の処理を行う。
【0215】
ステップS372において、プロセッサ81は、搭乗中のキャラクタを変更する。例えば、プレイヤキャラクタ70が崖面用搭乗キャラクタ80に搭乗中に、ボタン33が1回押下された場合、地上用搭乗キャラクタが選択され、プレイヤキャラクタ70が当該地上用搭乗キャラクタに搭乗した状態になる。また、ボタン36が1回押下された場合、鳥キャラクタ78が選択され、プレイヤキャラクタ70が当該鳥キャラクタ78に搭乗した状態になる。プロセッサ81は、ステップS372の処理を行った場合、図26の崖面キャラ搭乗中処理を終了する。
【0216】
ステップS373において、プロセッサ81は、プレイヤキャラクタ70及び崖面用搭乗キャラクタが、水面74に向かって移動しているか否かを判定する。例えば、プロセッサ81は、プレイヤキャラクタ70の位置に基づいて、プレイヤキャラクタ70が水面74の領域に入ったか否かを判定する。プロセッサ81は、ステップS373でYESと判定した場合は、次にステップS374の処理を行い、ステップS373でNOと判定した場合は、次にステップS375の処理を行う。
【0217】
ステップS374において、プロセッサ81は、搭乗中のキャラクタを水上用搭乗キャラクタに変更する。これにより、プレイヤキャラクタ70が搭乗しているキャラクタが、崖面用搭乗キャラクタから水上用搭乗キャラクタ(具体的には魚キャラクタ79)に自動的に変更される。なお、複数の水上用搭乗キャラクタが用意される場合、例えば、複数の水上用搭乗キャラクタのうち、直前に水上においてプレイヤキャラクタ70が搭乗していたキャラクタに自動的に変更されてもよい。また、複数の水上用搭乗キャラクタのうち、ランダムに選択されたキャラクタに自動的に変更されてもよい。プロセッサ81は、ステップS374の処理を行った場合、図26の崖面キャラ搭乗中処理を終了する。
【0218】
ステップS375において、プロセッサ81は、プレイヤキャラクタ70及び崖面用搭乗キャラクタが、空中にいるか否かを判定する。例えば、プレイヤキャラクタ70が崖面用搭乗キャラクタに搭乗中に、ジャンプ動作が行われた場合、プレイヤキャラクタ70及び崖面用搭乗キャラクタが地面71から離れて、一時的に空中にいる状態になる。プロセッサ81は、ステップS375でYESと判定した場合は、次にステップS376の処理を行い、ステップS375でNOと判定した場合は、次にステップS378の処理を行う。なお、プロセッサ81は、ステップS375でYESと判定した場合、Aボタン53の押下を促す表示とともに、空中用搭乗キャラクタを示す表示を行う。
【0219】
ステップS376において、プロセッサ81は、Aボタン53が押下されたか否かを判定する。プロセッサ81は、ステップS376でYESと判定した場合は、次にステップS377の処理を行い、ステップS376でNOと判定した場合は、次にステップS378の処理を行う。
【0220】
ステップS377において、プロセッサ81は、搭乗中のキャラクタを空中用搭乗キャラクタに変更する。これにより、プレイヤキャラクタ70は、空中用搭乗キャラクタ(具体的には鳥キャラクタ78)に搭乗して、空中を移動可能な状態となる。なお、鳥キャラクタ78を含む複数の空中用搭乗キャラクタが用意されてもよい。この場合、例えば、複数の空中用搭乗キャラクタのうち、直前に空中においてプレイヤキャラクタ70が搭乗していたキャラクタに変更されてもよい。また、複数の空中用搭乗キャラクタのうち、ランダムに選択されたキャラクタに変更されてもよい。プロセッサ81は、ステップS377の処理を行った場合、図26の崖面キャラ搭乗中処理を終了する。
【0221】
ステップS378において、プロセッサ81は、プレイヤキャラクタ70及び崖面用搭乗キャラクタが、地面71上に位置し、崖面75に向かって移動している否かを判定する。例えば、プロセッサ81は、プレイヤキャラクタ70の位置及び向きに基づいて、プレイヤキャラクタ70及び崖面用搭乗キャラクタが崖面75の近傍に位置し、かつ、プレイヤキャラクタ70が崖面75を向いているか否かを判定する。プロセッサ81は、ステップS378でYESと判定した場合は、次にステップS379の処理を行い、ステップS378でNOと判定した場合は、図26の崖面キャラ搭乗中処理を終了する。なお、プロセッサ81は、ステップS378でYESと判定した場合、崖面75を上る又は下るための操作を促す表示を行う。
【0222】
ステップS379において、プロセッサ81は、崖面75を上る又は下るための所定の指示が行われたか否かを判定する。プロセッサ81は、ステップS379でYESと判定した場合は、次にステップS380の処理を行い、ステップS379でNOと判定した場合は、図26の崖面キャラ搭乗中処理を終了する。
【0223】
ステップS380において、プロセッサ81は、プレイヤキャラクタ70及び崖面用搭乗キャラクタ80を崖面75に移行させる。これにより、プレイヤキャラクタ70及び崖面用搭乗キャラクタ80は、崖面75上を移動する状態になる。プロセッサ81は、ステップS380の処理を行った場合、図26の崖面キャラ搭乗中処理を終了する。
【0224】
なお、上記フローチャートは単なる例示であり、各ステップの内容に変更が加えられたり、別のステップが加えられたり、上記ステップの一部が省略されたり、各ステップの順番が入れ替えられたりしてもよい。
【0225】
以上のように、本実施形態では、地面71や水面74、崖面75等により形成された地形を含む仮想空間内をプレイヤキャラクタ70が移動することを前提として、プレイヤキャラクタ70が搭乗することができる複数種類の搭乗キャラクタが用意される。複数種類の搭乗キャラクタは、空中を移動可能な空中用搭乗キャラクタと、地上を移動可能な地上用搭乗キャラクタと、水上を移動可能な水上用搭乗キャラクタと、崖面を移動可能な崖面用搭乗キャラクタとを含む。
【0226】
プレイヤの選択操作に基づいて、複数種類の搭乗キャラクタのうち地上用搭乗キャラクタが選択され、搭乗指示が行われた場合、プレイヤキャラクタ70が地上用搭乗キャラクタに搭乗し、地上において移動可能な状態になる。また、選択操作に基づいて、水上用搭乗キャラクタが選択され、搭乗指示が行われた場合、プレイヤキャラクタ70が水上用搭乗キャラクタに搭乗し、水上又は水中において移動可能な状態になる。また、プレイヤの選択操作に基づいて、空中用搭乗キャラクタが選択され、搭乗指示が行われた場合、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗し、空中において移動可能な状態になる。また、プレイヤキャラクタ70が空中にいるときに所定の操作入力が行われた場合、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗し、空中において移動可能な状態になる。プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗中は、操作入力に基づいて、空中用搭乗キャラクタに搭乗したプレイヤキャラクタ70が空中において移動される。プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗中に、空中用搭乗キャラクタに搭乗したプレイヤキャラクタ70が地面に向かって移動する場合、地上用搭乗キャラクタにプレイヤキャラクタ70が搭乗した状態に自動的に変更され、プレイヤキャラクタ70が地上において移動可能な状態になる。また、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗中に、空中用搭乗キャラクタに搭乗したプレイヤキャラクタ70が水面に向かって移動する場合、水上用搭乗キャラクタにプレイヤキャラクタ70が搭乗した状態に自動的に変更され、プレイヤキャラクタ70が水上又は水中において移動可能な状態になる。
【0227】
これにより、プレイヤキャラクタ70を仮想空間の領域に応じて複数種類の搭乗オブジェクトに搭乗させ、仮想空間内で移動させることができる。仮想空間において様々な移動方法を提供することができ、移動する領域に応じて搭乗オブジェクトを自動的に変更することにより、スムーズかつシームレスな移動を実現することができる。
【0228】
また、本実施形態では、プレイヤキャラクタ70が地上にいるときには選択操作によって複数の搭乗キャラクタの中から空中用搭乗キャラクタを選択し、搭乗指示に応じてプレイヤキャラクタ70を空中用搭乗キャラクタに搭乗させ、プレイヤキャラクタ70が空中にいるときには、所定の操作入力(Aボタンの押下)によりプレイヤキャラクタ70を空中用搭乗キャラクタに搭乗させる。これにより、プレイヤキャラクタ70が空中にいるときには、簡易な操作でプレイヤキャラクタ70を空中用搭乗キャラクタに搭乗させることができ、プレイヤキャラクタ70が地上に落下してダメージが与えられることを抑制することができる。
【0229】
また、本実施形態では、プレイヤキャラクタ70が水中にいるときには、所定の操作入力(Aボタンの押下)によりプレイヤキャラクタ70を水上用搭乗キャラクタに搭乗させた。これにより、プレイヤキャラクタ70が水中にいるときには、簡易な操作でプレイヤキャラクタ70を水上用搭乗キャラクタに搭乗させることができ、プレイヤキャラクタ70にダメージが与えられることを抑制することができる。
【0230】
(変形例)
以上、本実施形態の画像処理ついて説明したが、上記実施形態は単なる一例であり、例えば以下のような変形が加えられてもよい。
【0231】
例えば、上記実施形態では、プレイヤキャラクタ70を搭乗キャラクタに搭乗させるものとしたが、プレイヤキャラクタ70を任意の搭乗オブジェクトに搭乗させてもよい。搭乗オブジェクトは、上述したキャラクタに限らず、プレイヤキャラクタ70が搭乗することが可能な車、飛行機、船等のオブジェクトであってもよい。
【0232】
また、上記実施形態では、プレイヤキャラクタ70が通常の状態のときには、例えば、ボタン33又は36を用いた選択操作により搭乗キャラクタを選択し、プラスボタン57を用いた搭乗指示に応じて、選択した搭乗オブジェクトにプレイヤキャラクタ70を搭乗させた。他の実施形態では、プレイヤキャラクタ70が通常の状態のときに、1回の操作入力によって、搭乗オブジェクトの選択と搭乗指示とが行われてもよい。例えば、複数のボタンのそれぞれが複数の搭乗オブジェクトのそれぞれと対応付けられ、プレイヤキャラクタ70が通常の状態のときに、複数のボタンのうち、操作されたボタンに応じた搭乗オブジェクトにプレイヤキャラクタ70を搭乗させてもよい。
【0233】
また、上記実施形態では、例えば、プレイヤキャラクタ70が空中用搭乗キャラクタに搭乗中に、地面に向かって移動する場合、地上用搭乗キャラクタに自動的に変更した。具体的には、複数種類の地上用搭乗キャラクタのうち、直前に地上で搭乗していたキャラクタに自動的に変更した。他の実施形態では、複数種類の地上用搭乗キャラクタのうち、予め定められたキャラクタに自動的に変更されてもよい。また、複数種類の地上用搭乗キャラクタのうちの何れかを予めプレイヤが設定しておき、空中用搭乗キャラクタに搭乗したプレイヤキャラクタ70が地面に向かって移動する場合に、複数種類の地上用搭乗キャラクタのうち、当該予め設定されたキャラクタに自動的に変更されてもよい。
【0234】
また、上記実施形態において例示した操作入力は単なる一例であり、他の任意の操作入力に代替されてもよい。例えば、ボタン33又は36を用いた選択操作、プラスボタン57を用いた搭乗指示、空中において空中用搭乗キャラクタに切り替えるための操作入力等は、他のボタン操作によって行われてもよいし、タッチパネルに対するタッチ操作によって行われてもよいし、コントローラ又はゲーム装置の姿勢に応じて行われてもよい。
【0235】
また、上記ハードウェア構成は単なる一例であり、他の任意のハードウェアを用いて上述したゲーム処理が行われてもよい。また、上記ゲームは単なる一例であり、他の任意のゲームにおいて上述した搭乗オブジェクトに関する処理が行われてもよい。
【0236】
また、上記実施形態では、ゲームシステム1における本体装置2において上述した処理が行われることとしたが、上述した処理は他の任意の情報処理装置(例えば、パーソナルコンピュータ、スマートフォン、タブレット端末、サーバ)等において実行されてもよい。また、複数の装置を含む情報処理システムにおいて上述した処理が行われてもよく、複数の装置のうちの何れにおいても、上述した処理の一部又は全部が行われてもよい。
【0237】
以上、本発明について説明したが、上記説明は本発明の例示に過ぎず、種々の改良や変形が加えられてもよい。
【符号の説明】
【0238】
1 ゲームシステム
2 本体装置
3 左コントローラ
4 右コントローラ
12 ディスプレイ
70 プレイヤキャラクタ
71 地面
74 水面
75 崖面
76 選択画像
77 馬キャラクタ
78 鳥キャラクタ
79 魚キャラクタ
80 崖面用搭乗キャラクタ
81 プロセッサ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26