JP7457775B2 - 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法 - Google Patents

情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法 Download PDF

Info

Publication number
JP7457775B2
JP7457775B2 JP2022181366A JP2022181366A JP7457775B2 JP 7457775 B2 JP7457775 B2 JP 7457775B2 JP 2022181366 A JP2022181366 A JP 2022181366A JP 2022181366 A JP2022181366 A JP 2022181366A JP 7457775 B2 JP7457775 B2 JP 7457775B2
Authority
JP
Japan
Prior art keywords
character
player
game
operation mode
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022181366A
Other languages
English (en)
Other versions
JP2023016051A (ja
Inventor
吉晃 福田
裕一朗 伊藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2022181366A priority Critical patent/JP7457775B2/ja
Publication of JP2023016051A publication Critical patent/JP2023016051A/ja
Priority to US18/502,417 priority patent/US20240157238A1/en
Application granted granted Critical
Publication of JP7457775B2 publication Critical patent/JP7457775B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/837Shooting of targets
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Processing Or Creating Images (AREA)

Description

本開示は、少なくとも1つの第2端末と通信可能な第1端末のコンピュータによって実行される情報処理に関する。
従来から、ゲームプレイ中に、通常のプレイから、プレイヤの指示に応じて画面に表示されるゲーム画像を記憶媒体に保存することが可能な「撮影モード」に切り替えることができるゲームが知られている(例えば、特許文献1)。
特開2019-37614号公報
上記のゲームは、1人プレイ用のゲームを想定したものであった。ここで、複数のプレイヤが参加するマルチプレイゲームを考える。特に、各プレイヤが各自のプレイヤキャラクタを操作でき、各プレイヤキャラクタ同士で干渉し合えるゲームを想定する。このようなマルチプレイゲームの実行中に、いずれかのプレイヤが撮影モードに移行し、カメラ操作を行うとする。このようなカメラ操作を行っている最中に、撮影モードに移行したプレイヤのプレイヤキャラクタが他のプレイヤキャラクタから攻撃される等で何らかの影響を受けた場合、撮影に係る行動に支障をきたす虞がある。
それ故に、本開示の目的は、マルチプレイゲームにおいて撮影モードを利用する場合、撮影を担当するプレイヤが円滑な撮影を行えるようにすることができる情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法を提供することである。
上記目的を達成するために、例えば以下のような構成例が挙げられる。
(構成1)
構成1は、少なくとも1つの第2端末と通信可能な第1端末のコンピュータによって実行される情報処理プログラムであって、ゲーム実行手段、ゲームにおいて第1端末の第1プレイヤの操作モードがキャラクタ操作モードである場合は、第1キャラクタ制御手段、第2キャラクタ制御手段、第1キャラクタ退場手段、操作モード切替手段としてコンピュータを機能させる。また、第1プレイヤの操作モードが撮影モードである場合は、撮影用仮想カメラ制御手段、画像保存手段、退場無効化手段として、コンピュータを機能させる。ゲーム実行手段は、第2端末との間でゲーム状況を同期するゲームを実行する。第1キャラクタ制御手段は、第1プレイヤによる操作入力に基づいて、仮想空間内の第1キャラクタに、当該仮想空間のゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせる。第2キャラクタ制御手段は、第2端末から受信した通信データに基づいて、仮想空間内の第2キャラクタに、ゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせる。第1キャラクタ退場手段は、第2キャラクタによる攻撃動作によって第1キャラクタの退場条件が満たされた場合、当該第1キャラクタをゲームステージから少なくとも一時的に退場させる。操作モード切替手段は、ゲームにおいて第1プレイヤに関する操作モード変更条件が満たされた場合、当該第1プレイヤの操作モードをキャラクタ操作モードから撮影モードに切り替える。撮影用仮想カメラ制御手段は、第1プレイヤによる操作入力に基づいて、仮想空間内を撮影するための撮影用仮想カメラの位置、姿勢、画角のうち少なくともいずれかを制御する。画像保存手段は、第1プレイヤによる画像保存操作入力に応じて、撮影用仮想カメラに基づいた画像を保存する。退場無効化手段は、第1キャラクタの退場条件が第2キャラクタの攻撃動作によって満たされないように、当該第2キャラクタによる第1キャラクタに対する攻撃を無効化する、あるいは、当該攻撃動作による当該第1キャラクタのゲームステージからの退場を無効化する。
上記構成例によれば、撮影モード中は第1キャラクタに対する第2キャラクタからの攻撃を無効化している。そのため、撮影モード中に第1キャラクタが第2キャラクタの攻撃動作を受けることによって第1プレイヤの撮影操作ができなくなってしまう状況を防止できる。これにより、撮影モード中における第1プレイヤの撮影操作を円滑に行わせることができる。
(構成2)
構成2は、上記構成1において、第1プレイヤの操作モードが撮影モードである場合は、当該第1プレイヤによる操作入力に基づく第1キャラクタの制御は制限されてもよい。
上記構成例によれば、撮影モードのときは、第1プレイヤの操作対象を第1キャラクタから撮影用仮想カメラに切り替える。これにより、第1キャラクタも撮影の対象(被写体)とすることができる。
(構成3)
構成3は、上記構成2において、情報処理プログラムは、第1プレイヤの操作モードが撮影モードである場合に、所定の時間が設定されたタイマーのカウントを開始するタイマー開始手段、当該カウントの開始後、タイマーが所定の時間に達すると撮影用仮想カメラに基づいた画像を保存する自動画像保存手段、としてコンピュータを更に機能させてもよい。そして、タイマーのカウント開始後、所定の時間に達するまでの間は、第1プレイヤによる操作入力に基づく撮影用仮想カメラの制御が制限され、当該操作入力に基づく第1キャラクタの制御の制限は解除されてもよい。
上記構成例によれば、撮影モード中に撮影タイマーを起動させると、タイマーのカウント中は第1プレイヤの操作対象を第1キャラクタに戻すことができる。そのため、タイマーのカウント中に第1キャラクタの位置を調整したり、所定のポーズをとらせたりすることができる。これにより、第1キャラクタが映った画像を撮影したい場合のプレイヤの利便性を向上できる。
(構成4)
構成4は、上記構成1において、情報処理プログラムは、タイマーのカウント開始後、所定の時間に達するまでの間は、当該所定の時間に達するまでの時間を表すタイマー画像を表示するタイマー画像表示手段、タイマー画像を第2端末において表示させるための情報を当該第2端末に送信するタイマー情報送信手段、としてコンピュータを更に機能させてもよい。
上記構成例によれば、撮影が行われるまでの残り時間を、第1プレイヤおよび第2プレイヤに把握させることができる。
(構成5)
構成5は、上記構成1~3のいずれかにおいて、情報処理プログラムは、第1プレイヤの操作モードがキャラクタ操作モードから撮影モードに切り替えられたとき、撮影用仮想カメラに対応する位置にドローンオブジェクトを配置するドローン配置手段、第1プレイヤの操作モードが撮影モードである場合、第1プレイヤによる操作入力に基づく撮影用仮想カメラの制御内容に応じて、ドローンオブジェクトの位置および姿勢の少なくとも一方を制御するドローン制御手段、としてコンピュータを更に機能させてもよい。
上記構成例によれば、第1プレイヤが撮影モードに入ると、ドローンオブジェクトが表示される。そのため、第2プレイヤに、第1プレイヤが撮影モードに入ったことを把握させることができる。また、第2プレイヤに、撮影される場所を容易に判断させることができる。
(構成6)
構成6は、上記構成5において、情報処理プログラムは、第1プレイヤの操作モードが撮影モードである場合、撮影用仮想カメラの撮影範囲を表す撮影範囲画像を表示する撮影範囲表示手段、第1端末における撮影範囲画像を第2端末において表示させるための情報を当該第2端末に送信する撮影範囲情報送信手段、としてコンピュータを更に機能させてもよい。
上記構成例によれば、撮影用仮想カメラの撮影範囲を視認させることができる。これにより、第2プレイヤに、どこに行けば撮影画像に写ることができるのかについて、容易に判断させることができる。
(構成7)
構成7は、上記構成6において、撮影用仮想カメラの画角は、第1プレイヤによる画角変更操作入力に応じて変更可能であってもよい。そして、撮影範囲表示手段は、画角の変更に応じて撮影範囲画像を更新し、撮影範囲情報送信手段は、画角変更後の撮影範囲画像を第2端末において表示させるための情報を当該第2端末に送信してもよい。
(構成8)
構成8は、上記構成1~7のいずれかにおいて、第1キャラクタ退場手段は、第2キャラクタの攻撃動作にかかわらず第1キャラクタの退場条件が満たされた場合には、第1プレイヤの操作モードにかかわらず、当該第1キャラクタをゲームステージから少なくとも一時的に退場させてもよい。そして、操作モード切替手段は、操作モードが撮影モードである場合に第1キャラクタについての退場条件が満たされた場合は、当該操作モードをキャラクタ操作モードに切り替えてもよい。
上記構成例によれば、第2キャラクタからの攻撃以外の原因で第1キャラクタの退場条件が満たされた場合は、撮影モードが解除され、キャラクタ操作モードに戻る。そのため、例えば、第1キャラクタがゲームステージ上からステージ外に落下して退場させられたにも関わらず、撮影モードのまま第1キャラクタが操作できない状況となることを防ぐことができる。これにより、第1キャラクタの操作に係る利便性を向上できる。
(構成9)
構成9は、上記構成1~8のいずれかにおいて、第1プレイヤの操作モードが撮影モードである場合であっても、第2キャラクタに対する攻撃は無効化されないようにしてもよい。
上記構成例によれば、撮影モード中でも、例えば第2キャラクタ同士の攻撃行動は無効化はされずに反映されるため、第1キャラクタ以外については、通常のゲーム挙動による画像を撮影することができる。
(構成10)
構成10は、上記構成1~9のいずれかにおいて、ゲーム実行手段は、第2端末との通信を伴わずに第1端末だけでゲームを実行可能であってもよい。そして、操作モード切替手段は、第2端末との通信を伴わずにゲームが実行される場合は、操作モードをキャラクタ操作モードから撮影モードに切り替えたとき、ゲーム内の時間経過を停止させ、撮影モードからキャラクタ操作モードに切り替えたときは当該時間経過の停止を解除してもよい。また、第2端末との間でゲーム状況を同期しながらゲームが実行される場合は、操作モードをキャラクタ操作モードから撮影モードに切り替えたときでも、ゲーム内の時間経過を停止させないようにしてもよい。
上記構成例によれば、複数のプレイヤでゲームを行う場合は、撮影モードに入ってもゲーム内時間は停止しないようにする。これにより、ゲーム内時間の突然の停止によって他のプレイヤに混乱を招くことを防ぐことができる。
(構成11)
構成11は、上記構成1~10のいずれかにおいて、情報処理プログラムは、保存された画像を、第2端末に送信する保存画像送信手段としてコンピュータを更に機能させてもよい。
上記構成例によれば、第1プレイヤが撮影した画像をゲームの参加者全員で共有させることができる。
(構成12)
構成12は、上記構成5において、情報処理プログラムは、ゲームに参加するプレイヤが集合可能な仮想ルームを生成する仮想ルーム生成手段としてコンピュータを更に機能させてもよい。そして、ゲームに参加するプレイヤのうち、仮想ルームを作成したプレイヤが第1プレイヤとなり、当該第1プレイヤだけが操作モードをキャラクタ操作モードから撮影モードに切り替えることが可能なようにしてもよい。
上記構成例によれば、同時に複数のプレイヤが撮影可能となることで、撮影担当のプレイヤが誰になるのかについてプレイヤ間で混乱を招いてしまうことを防ぐことができる。
本開示によれば、撮影モード中において第1プレイヤの撮影操作を円滑に行わせることができる。
本実施形態に係る情報処理システムの全体像を示す模式図 サーバ1のハードウェア構成を示すブロック図 ゲーム装置2のハードウェア構成を示すブロック図 ゲーム画面の一例 ゲーム画面の一例 ゲーム画面の一例 ゲーム画面の一例 ゲーム画面の一例 ゲーム画面の一例 サーバ1の記憶部12に記憶される各種データの一例を示すメモリマップ ゲーム装置2の記憶部22に記憶される各種データの一例を示すメモリマップ 自キャラクタデータ314のデータ構成の一例 ホストプレイヤ処理の詳細を示すフローチャート ホストプレイヤ処理の詳細を示すフローチャート キャラクタ操作モード処理の詳細を示すフローチャート 撮影モード処理の詳細を示すフローチャート 撮影モード処理の詳細を示すフローチャート 撮影モード解除処理の詳細を示すフローチャート タイマーモード制御処理の詳細を示すフローチャート ゲストプレイヤ処理の詳細を示すフローチャート ゲストプレイヤ処理の詳細を示すフローチャート
以下、本発明の一実施形態について説明する。図1は、本実施形態に係る情報処理システム(ゲームシステム)の全体像を示す模式図である。本実施形態の情報処理システム100は、サーバ1と、複数の情報処理端末2とを含む。サーバ1と、情報処理端末2とは、インターネット等のネットワーク10を介して通信可能に構成されている。本実施形態では、このような構成で、情報処理が実行されるが、以下では、当該情報処理の一例として、ゲーム処理を例として説明する。具体的には、情報処理端末2上にゲームプログラムがインストールされ、必要に応じてサーバ1と通信を行いながら実行されるゲーム処理を例示する。
[サーバのハードウェア構成]
次に、上記サーバ1のハードウェア構成について説明する。図2は、サーバ1のハードウェア構成を示すブロック図である。サーバ1は、プロセッサ11と、記憶部12と、通信部13とを少なくとも備えている。プロセッサ部11は、サーバ1を制御するための各種プログラムを実行する。記憶部12には、プロセッサ部11によって実行される各種プログラムおよび利用される各種データが格納される。通信部13は、有線、または無線通信によってネットワークと接続し、上記情報処理装置2または他のサーバ(図示せず)との間で所定のデータを送受信する。
[情報処理端末のハードウェア構成]
次に、上記情報処理装置2について説明する。当該情報処理装置2は、例えばスマートフォン、据置型または携帯型のゲーム装置、タブレット端末、携帯電話、パーソナルコンピュータ、ウェアラブル端末等である。また、本実施形態にかかる情報処理は、上記のようなゲーム装置等と、所定のサーバとから構成されるゲームシステムにも適用可能である。本実施形態では、据置型ゲーム装置(以下、単にゲーム装置と呼ぶ)を情報処理装置2の一例として説明する。
図3は、本実施形態に係るゲーム装置2のハードウェア構成の一例を示すブロック図である。図3において、ゲーム装置2は、プロセッサ21を備える。プロセッサ21は、ゲーム装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ21は、記憶部22に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。なお、記憶部22は、例えば、フラッシュメモリやDRAM(Dynamic Random Access Memory)等の内部記憶媒体であってもよいし、図示しないスロットに装着される外部記憶媒体等を利用する構成でもよい。
また、ゲーム装置2は、ゲーム装置2が他のゲーム装置2や所定のサーバ装置と無線通信を行うための無線通信部23を備える。当該無線通信としては、例えば、インターネット通信や近距離無線通信が用いられる。
また、ゲーム装置2は、ゲーム装置2がコントローラ4と有線または無線通信を行うためのコントローラ通信部24を備える。
また、ゲーム装置2には、画像音声出力部25を介して表示部5(例えば、テレビ等)が接続される。プロセッサ21は、(例えば、上記の情報処理の実行によって)生成した画像や音声を、画像音声出力部25を介して表示部5に出力する。
次に、コントローラ4について説明する。図示は省略するが、本実施形態のコントローラ4は、縦長の形状のハウジングを有しており、縦長となる向きで把持されることが可能である。当該ハウジングは、縦長となる向きで把持される場合に片手で把持可能な形状および大きさをしている。
コントローラ4は、方向入力デバイスの一例であるアナログスティック42を少なくとも1つ備える。当該アナログスティック42は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック42を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。また、コントローラ4は、各種操作ボタンを含むボタン部43を備える。例えば、コントローラ4は、上記ハウジングの主面上に複数個の操作ボタンを備えていてもよい。当該操作ボタンは、例えば、ABXYボタンや、プラスボタン、マイナスボタン、Lボタン、Rボタン等である。
また、コントローラ4は、慣性センサー44を備える。具体的には、コントローラ4は、慣性センサー44として、加速度センサー、角速度センサーを備えている。本実施形態においては、加速度センサーは、所定の3軸方向に沿った加速度の大きさを検出する。また、角速度センサーは、所定の3軸回りの角速度を検出する。
また、コントローラ4は、上記コントローラ通信部24と有線または無線通信を行うための通信部41も備える。上記アナログスティック42に対する方向入力内容、ボタン部43の押下状態を示す情報、および、慣性センサー44による各種の検出結果は、適宜のタイミングで繰り返し通信部41へ出力され、ゲーム装置2に送信される。
[本実施形態で想定するゲームについて]
次に、本実施形態で実行されるゲーム処理について説明する。まず、本実施形態で想定するゲームの概要を説明する。本実施形態で想定するゲームは、プレイヤ間での対戦が可能なマルチプレイゲームを想定している。マルチプレイとは、通信ネットワークを介して複数のプレイヤで同時に同じゲームをプレイすることである。当該通信ネットワークとしては、インターネットを用いた通信でもよいし、近距離無線通信でもよい。本実施形態では、マルチプレイに参加するプレイヤは、仮想的なルームに入室し、ルーム単位でマルチプレイを行う。本実施形態では、当該仮想的なルームは、所定の部屋を模した仮想空間であるとする。
また、本実施形態で想定するゲームには、以下のような2つのゲームモードを有する。1つめは、「対戦モード」である。対戦モードでは、対戦の舞台となる仮想空間である「ステージ」において、複数のプレイヤが2チームに分かれて戦うゲームモードである。例えば、8人のプレイヤを4人ずつの2チームに分け、所定の制限時間内(例えば3分)で各チームの撃破数を競うというゲームがプレイできる。
もう1つのゲームモードは「非対戦モード」である。このゲームモードは、各プレイヤは上記ステージ内で、基本的には上記対戦モードと同様の行動ができるが、勝敗判定は行われないゲームモードである。いわば、上記ステージの「下見」をしたり、「対戦モード」に向けての「練習」や「模擬戦」のようなことが可能なゲームモードである。
また、本ゲームでは、非対戦モードは、複数人のプレイヤで実行することも可能であり1人のプレイヤだけで実行することも可能である。上記ルーム内のプレイヤが1人だけの状態で、上記非対戦モードによるゲームを開始すれば、プレイヤが1人だけでの非対戦モードがプレイ可能である。ルーム内のプレイヤが複数人いる状態で上記非対戦モードによるゲームを開始すれば、複数のプレイヤが参加した非対戦モードがプレイできる。以下では、プレイヤが1人だけでの非対戦モードのことは「1人非対戦モード」と呼び、複数のプレイヤが参加した非対戦モードのことは「複数人非対戦モード」と呼ぶ。そして、以下に説明する本実施形態の処理は、主に複数人非対戦モードに関する処理である。
次に、上記複数人非対戦モードの開始から終了までの処理の概要や操作の一例を説明する。まず、ゲームに参加する複数のプレイヤのうちのいずれか1人が、ルーム作成のための所定の操作を行うことで、上記ルームが作成される。以下、当該ルームを作成したプレイヤのことを「ホストプレイヤ」と呼び、当該ホストプレイヤのゲーム装置2のことを「ホストプレイヤ機」と呼ぶ。また、ホストプレイヤ以外の参加者のことは「ゲストプレイヤ」と呼び、各ゲストプレイヤのゲーム装置2のことを「ゲストプレイヤ機」と呼ぶ。また、ホストプレイヤが操作するプレイヤキャラクタのことを「ホストキャラクタ」と呼び、各ゲストプレイヤが操作する各プレイヤキャラクタのことを「ゲストキャラクタ」と総称する。また、本実施形態では、1つのルームに参加できるプレイヤ数は最大8人であり、以下の説明でも、8人のプレイヤが参加する場合を例として説明する。
ルーム作成が終われば、仮想的なルーム内にホストキャラクタが移動し、ゲストプレイヤの参加待ちとなる。そして、当該ルーム内において、ホストプレイヤは、所定のステージを選択し、そのステージを用いて対戦モードでプレイするか非対戦モードでプレイするかを設定できる。ここでは、非対戦モードで所定のステージをプレイすることがホストプレイヤによって設定されるものとする。また、ホストプレイヤは、参加プレイヤのチーム分けも行う。
各プレイヤは、各自のプレイ準備が完了すれば、例えば「準備完了」を示す操作を行う。そして、プレイヤが8人揃い、全員が「準備完了」すれば、非対戦モードによるゲームが開始される。すなわち、プレイヤキャラクタ全員がルームから上記ステージに移動し、チーム毎に決められた所定の位置に各プレイヤキャラクタが配置される。その後、ゲームが開始され、所定の制限時間が経過するまでの間、各プレイヤは、対戦モードの場合と同様の行動を各自のプレイヤキャラクタに行わせることができる。具体的には、各プレイヤは「移動」と「攻撃動作」をプレイヤキャラクタに行わせることができる。攻撃動作は、例えば射撃である。各プレイヤは、各プレイヤキャラクタが装備している武器を用いた射撃を行わせることができる。また、攻撃を受けたプレイヤキャラクタはダメージを受けたり、吹き飛ばされたりする。そして、例えばHP(ヒットポイント)が0になったプレイヤキャラクタは、一旦ステージから退場し、所定の位置にリスポーンする。なお、当該リスポーンが発生する条件(以下、退場条件と呼ぶ)としては、HPが0になることの他、例えばステージ外に落下した場合も、退場条件が満たされる。当該落下が発生する場合としては、例えば、プレイヤキャラクタが足を踏み外すような操作をプレイヤが行った場合がある。また、他のプレイヤキャラクタの攻撃を受けて吹き飛ばされる等で強制的に移動させられることで落下するような場合もある。また、ステージ内の所定のギミックによって強制的に移動させられることで落下する場合がある。
このように、複数人非対戦モードでは、対戦モードの場合と同様の移動や攻撃動作をプレイヤキャラクタに行わせることができる。但し、上記のように非対戦モードは勝敗判定を行わないゲームモードであるため、プレイヤは勝敗を気にせずにプレイヤキャラクタをいろいろ操作したり、ステージの構造を下見したりすることが可能となっている。そして、所定の制限時間が経過すれば、自動的に複数人非対戦モードは終了し、各プレイヤキャラクタは上記ルーム内に戻ることになる。その後、ルームから退出するか、ホストプレイヤによるルームの解散によって、各プレイヤはゲームを終了することができる。もちろん、退出等せずに、対戦モードまたは非対戦モードで引き続いてゲームを開始することもできる。なお、非対戦モードにおける上記制限時間は、対戦モードの場合の制限時間よりは長い時間に予め設定されている。例えば対戦モードの制限時間は3分であり、非対戦モードの制限時間は60分である、等である。上記のように、ステージの下見や練習という観点から、長めの時間を設定しているものである。また、当該制限時間については、ホストプレイヤが自由に設定可能としてもよい。
[撮影モードについて]
ここで、上記ホストプレイヤは、上記複数人非対戦モードによるゲームにおいて、操作モードを「撮影モード」というものに切り替えることができる。当該操作モードを撮影モードに切り替えると、ホストプレイヤの操作対象がホストキャラクタから仮想カメラに切り替わる。そして、ホストプレイヤは、ステージ内で自由に仮想カメラを操作し、任意のタイミングで仮想空間内を「撮影」することができる。いわば、ホストプレイヤがカメラマンとなり、複数人非対戦モードにおける各プレイヤの行動等を所定の位置から撮影することができる。以下の説明では、ホストプレイヤの操作モードに関して、「撮影モード」ではないほうの操作モードのことは「キャラクタ操作モード」と呼ぶ。
ここで、撮影モードではホストプレイヤは仮想カメラを直接的に操作できるが、一般に、仮想カメラは画面には表示されない要素である。この点に関して、本ゲームでは、撮影モードに入ると、仮想カメラの位置に「ドローンオブジェクト」を出現・配置させている。そして、ホストプレイヤは、撮影モード中は、基本的には、このドローンオブジェクトを操作する、という体裁を採っている。つまり、ドローンオブジェクトの移動操作が仮想カメラの移動操作となる。このような仮想カメラに相当するオブジェクトを可視的に出現させることで、ゲストプレイヤから見て、ホストプレイヤが現在撮影モードに入っているということや、どの位置に行けば自分が撮影されるのかがわかりやすくなる。
以下、撮影モードにおける画面例および操作例を説明する。まず、図4に、ホストプレイヤの操作モードがキャラクタ操作モードの場合の、ホストプレイヤ機における画面例を示す。なお、非対戦モードにおけるデフォルトの操作モードはキャラクタ操作モードであるとする。図4では、ホストキャラクタと、3体のゲストキャラクタとが含まれたゲーム画像が表示されている。ここで、本ゲームでは、プレイヤキャラクタを注視点に設定した3人称画面としてゲーム画像が表示される。そのため、仮想カメラは、原則として、プレイヤキャラクタの後方に所定距離離れた位置に配置され、プレイヤキャラクタを追従するようにして移動制御される。以下、キャラクタ操作モードにおける当該仮想カメラの配置位置のことを「デフォルトカメラ位置」と呼ぶ。なお、本実施形態では3人称視点のゲームを例として説明するが、1人称視点のゲームであっても、本実施形態の処理は適用可能である。
また、図4において、キャラクタ操作モードにおけるUI(ユーザインターフェース)画像として、画面上部に制限時間およびプレイヤのチーム分けを示す画像、各プレイヤの装備武器を示す画像が表示されている。また、画面右上には円形のミニマップ画像が表示されている。これらの画像は、対戦モードでも表示される画像である。つまり、対戦モードのときと同じUI画像が表示されている。また、画面右下には、操作ガイド画像も表示されている。当該操作ガイド画像では、上記コントローラ4のマイナスボタンの押下で撮影モードに移行できることが示されている。なお、当該撮影モード移行操作を示す操作ガイド画像については、ホストプレイヤの画面にしか表示されない。
上記のような画面が表示されている状態で、ホストプレイヤがマイナスボタンを押下すると、撮影モードに移行し、図5のような画面が表示される。撮影モード移行直後の状態である図5では、仮想カメラの位置自体は変化していないため、仮想空間の画像については大きな変化はないが、UI画像が撮影モード用のUI画像に変化している。以下、「キャラクタ操作モード」におけるUI画像のことを「通常UI」と呼び、撮影モード用のUI画像は「撮影UI」と呼ぶ。図5の例では、撮影UIとして、ドローンオブジェクト(仮想カメラ)の操作方法を示す画像が画面の右下に表示されている。また、撮影モードの終了方法を示す操作ガイド画像が画面左下に表示されている。
上記のように撮影モードに移行すれば、ホストプレイヤは、コントローラ4を操作することでドローンオブジェクトを移動させることができる。すなわち、ホストプレイヤの操作は、ドローンオブジェクトの動作に反映され、ホストキャラクタには反映されない。そのため、撮影モード中は、ホストキャラクタは、基本的には撮影モード移行時の位置から移動しないことになる。撮影モードにおいてホストプレイヤがドローンオブジェクトを移動させた結果、例えば図6に示すようなゲーム画像が表示される。図6では、図5におけるホストキャラクタの前方方向の、ある程度離れた位置にドローンオブジェクトを移動させ、撮影方向をホストキャラクタのいる方向とした場合の画面が表示されている。
このように、撮影モードでは、ホストプレイヤは、ドローンオブジェクトを移動させることができる。そして、所定の位置で撮影ボタン(例えばAボタン)を押下することで、ドローンオブジェクトから見た仮想空間の様子を撮影することができる。また、所定の解除操作(本例ではマイナスボタンの押下)を行うことで、ホストプレイヤは、撮影モードを終えてキャラクタ操作モードに戻ることができる。
次に、ホストプレイヤが撮影モードであるときのゲストプレイヤ機におけるゲーム画面の一例を示す。図7は、ホストプレイヤの操作モードがキャラクタ操作モードのときの画面例であり、図8は、撮影モードのときの画面例である。撮影モードのときの図8では、ドローンオブジェクトが表示されているが、キャラクタ操作モードのときの図7では、ドローンオブジェクトは表示されていない。そのため、ドローンオブジェクトの有無によって、ホストプレイヤが撮影モードに移行しているか否かがゲストプレイヤは判別可能である。また、図8においては、ドローンオブジェクトと共に、4本の直線が表示されている。この直線は、ホストプレイヤに係る仮想カメラに相当するドローンオブジェクトの画角(視野角)を示す直線である。以下、この直線のことを「画角線」と呼ぶ。当該画角線はそれぞれ、ドローンオブジェクト(仮想カメラ)の視野領域の4隅に対応している。このような画角線もドローンオブジェクトと一緒に表示することで、ゲストプレイヤは、ドローンオブジェクトの撮影範囲を認識しやすくなる。例えば、どこに移動すればカメラに映ることができるか等をゲストプレイヤが認識しやすくなり、画角線の範囲内にゲストキャラクタを移動させる等の行動が行いやすくなる。また、後述の通り、ホストプレイヤの操作に同期してゲストプレイヤの画面のドローンオブジェクトが移動・回転する、画角線が広がったり狭まったりするため、ゲストプレイヤはゲストキャラクタをどのように移動させるべきか認識しやすくなる。
なお、本実施形態では、上記撮影範囲を画角線という態様で示しているが、撮影範囲がわかるような態様であれば、画角線に限らず、どのような手法で提示してもよい。
[タイマーについて]
また、ホストプレイヤは、上記撮影モードにおいて、撮影タイマーを利用することもできる。具体的には、本ゲームでは、タイマー時間として予め10秒という値が設定されている。そのため、タイマー開始後、10秒経過したら撮影が行われる、ということも可能である。ここで、タイマー開始後からタイマー時間が経過するまでのタイマー期間中は、ホストプレイヤの操作対象がホストキャラクタに一時的に切り替わる。そのため、ホストプレイヤは、タイマー期間中にホストキャラクタを移動させることができる。この場合、ドローンオブジェクトの位置は固定され、ホストキャラクタの移動に追従しないようになる。例えば、上記図6に示したような画面でタイマーを開始した場合は、その時点で仮想カメラの位置が固定される。そのため、ホストプレイヤは、図6のような固定画面内でホストキャラクタを移動させることになる。
また、タイマー期間中については、ホストプレイヤ機、ゲストプレイヤ機のいずれにも、タイマーのカウントを示す画像が表示される。図9に、タイマー期間中における、ゲストプレイヤ機の画面の一例を示す。図9に示すように、タイマー期間中は、ゲストプレイヤ機の画面上にタイマーのカウントを示すタイマー画像が表示される。ゲストプレイヤは、これを参考にして、ドローンオブジェクトの撮影範囲内に移動するかどうかの判断等ができる。また、タイマーのカウントを参考にして、ジャンプのようなアクションを行ったり、キャラクタに対応付けられる必殺技を出す等のアクションを行う等の判断を行うことができる。
なお、本実施形態では、タイマー時間は10秒の固定値である場合を例にしているが、この時間はプレイヤが自由に設定可能なように構成してもよい。
ここで、撮影モード中においてホストキャラクタが上記退場条件を満たした場合、上記のようにリスポーンが発生する。このような撮影モード中に退場条件が満たされた場合は、その時点で撮影モードは強制終了し、キャラクタ操作モードに移行する。例えば、上記のようなタイマー期間中にホストキャラクタを移動させた結果、ホストキャラクタがステージから落下した場合は、その時点で撮影モードは終了することになる。そして、リスポーン地点にホストキャラクタが再登場した時点では、操作モードはキャラクタ操作モードとなっている。
また、その他、撮影モード中に制限時間が経過した場合や、制限時間内ではあるが、ゲストプレイヤが複数人非対戦モードによるゲームをやめることを示す操作を行った場合にも、撮影モードは強制終了し得る。
なお、本実施形態では、ゲストプレイヤは撮影モードへの切り替えはできないようにしている。これは、次のような理由による。もしゲストプレイヤも撮影モードに移行可能とすると、同時に複数プレイヤが撮影モードに移行した場合に、上記ドローンオブジェクトも複数体出現することになる。そうすると、各プレイヤは、どのドローンでいつ撮影が行われるのかわかりにくくなり、混乱を招きかねない。そのため、本実施形態では、ホストプレイヤのみ撮影モードを利用可能とすることで、このよう混乱の発生を防いでいる。
[攻撃無効化設定について]
ところで、複数人非対戦モードでは、上記のように、対戦モードの場合と同様にプレイヤキャラクタの移動や攻撃動作が可能となっている。その一方で、ホストキャラクタについては、上記撮影モード中は原則的に移動できない状態となっている。そのため、ホストキャラクタが撮影モードであるときに、ゲストキャラクタがホストキャラクタに対して攻撃動作を行うと、攻撃を受けたホストキャラクタについて上記退場条件が満たされてしまう可能性がある。例えば、攻撃を受けた結果、HPが0になったり、ホストキャラクタがステージ外に吹き飛ばされたりする等で、退場条件が満たされ得る。そして、上記のように、撮影モード中に退場条件が満たされると、撮影モードは強制終了する。そのため、ホストプレイヤからすると、撮影行動がゲストプレイヤに邪魔されてしまうという結果が発生し得る。そこで、本実施形態では、ホストキャラクタについては、上記撮影モード中は、ゲストプレイヤからの攻撃によって上記退場条件が満たされることがないような設定を行う。具体的は、本実施形態では、上記撮影モードに移行したとき、ホストキャラクタに、ゲストキャラクタからの攻撃を全てはじき返す「特殊アーマー」を一時的に装備させる。そして、撮影モードが終了したときに、当該「特殊アーマー」の装備を解除する。これにより、撮影モード中は、ホストキャラクタがゲストキャラクタに攻撃されても、その攻撃を無効化できる。これにより、HPが0になることや、攻撃によって吹き飛ばされる等でホストキャラクタの位置が変化してしまうことを防ぐことができる。すなわち、ゲストキャラクタの攻撃によって撮影モードが強制終了することを防ぐことができる。これにより、ホストプレイヤは、撮影行動に専念できる。また、ゲストプレイヤにとっても、ホストプレイヤによる撮影を阻害するような結果を気にせず行動することができるため、ゲストプレイヤによるゲストキャラクタの制御を自由に行うことができる。
また、撮影モード中でも、ゲストキャラクタについては上記のような攻撃無効化設定は行われない。そのため、撮影モード中においても、ゲストキャラクタ同士での攻撃行動は通常通り反映される。これにより、ゲストキャラクタ同士で攻撃行動を行い、一方が倒された瞬間をホストプレイヤが撮影する、というような楽しみ方も可能である。特に、このような何かの「瞬間」を狙って撮影する場合を考えると、上記のような攻撃無効化設定によってゲストプレイヤから邪魔されないようにすることで、シャッターチャンスを逃しにくくすることができる。その結果、ホストプレイヤの撮影作業における利便性が向上できるといえる。
なお、本例では「特殊アーマー」を装備させるという例で説明するが、ゲストキャラクタの攻撃によってホストキャラクタが退場しないようにできれば、上記以外の手法を用いてもよい。例えば、「特殊アーマー」の装備は行わず、ホストキャラクタのHPを一時的に増加させてもよい。この場合は、攻撃を受け続けても制限時間内に0にすることができない程度まで増加させればよい。また、例えば、撮影モード中は、ゲストキャラクタの攻撃動作の実行自体を制限するようにしてもよい。つまり、ホストキャラクタが撮影モードである間は、全プレイヤキャラクタは攻撃行動が行えずに、移動のみ可能な状態としてもよい。また、このような、プレイヤキャラクタ自体の性能を変化させたり、行動を制限したりする手法に限らず、退場条件自体を一時的に変更するような手法を用いてもよい。例えば、ゲストキャラクタからの攻撃自体は受け付け、HPも減少するが、HPが0になっても退場させないような設定や制御を行ってもよい。この場合は、ホストキャラクタについて、撮影モード中は上記退場条件自体を一時的に変更するような設定が行われる。
なお、本実施形態では、撮影モード中はホストキャラクタはゲストキャラクタからの攻撃は無効化するため、この攻撃によって退場条件が満たされることはないが、当該攻撃以外の原因で退場条件が満たされる余地は残している。例えば、上記タイマー期間中にホストプレイヤがホストキャラクタを移動させた結果、ホストキャラクタがステージから落下してしまった場合は、その時点で撮影モードは強制終了することになる。これは、例えば、撮影モード中にホストキャラクタがステージから落下したにも関わらず退場させないとすると、逆に不便、あるいは不自然な挙動になると考えられるためである。
このように、本実施形態では、複数人非対戦モードにおいて、ホストキャラクタの操作モードが撮影モードである間は、ゲストプレイヤによる攻撃に基づいてステージから退場することを制限している。これにより、ホストプレイヤは撮影行動に専念でき、撮影モードの利便性が向上する。
[本実施形態のゲーム処理の詳細]
次に、図10~図21を参照して、本実施形態におけるゲーム処理についてより詳細に説明する。
[使用データについて]
まず、本実施形態で用いられる各種データに関して説明する。まず、サーバ1で用いられるデータについて説明し、その後、ゲーム装置2で用いられるデータについて説明する。
[サーバ1に記憶されるデータについて]
図10は、サーバ1の記憶部12に記憶される各種データの一例を示すメモリマップである。記憶部12には、管理用プログラム301、プレイヤデータベース302、ルーム管理データベース303等が記憶されている。
管理用プログラム301は、本実施形態に係るゲーム処理においてサーバが担当する各種機能を実現させるためのプログラムである。
プレイヤデータベース302は、ゲームに参加する各プレイヤに関するデータベースである。具体的には、プレイヤデータベース302には、各プレイヤのアカウントID等のアカウント情報が含まれている。
ルーム管理データベース303は、上記ルームを管理するためのデータベースである。具体的には、ルーム管理データベース303の各レコードには、上記ホストプレイヤによって作成されたルームを特定する情報と、各ルームの参加プレイヤを示す情報等が含まれている。
その他、図示は省略するが、ゲーム装置2に送信するための各種データ等も必要に応じて適宜生成され、記憶部12に記憶され得る。また、ゲーム装置2から受信した各種データも一時的に記憶部12に記憶され得る。
[ゲーム装置2に記憶されるデータについて]
次に、ゲーム装置2に記憶されるデータについて説明する。図141は、ゲーム装置2の記憶部22に記憶される各種データの一例を示すメモリマップである。ゲーム装置2の記憶部22には、ゲームプログラム311、ステージマスタデータ312、参加ルームデータ313、自キャラクタデータ314、他キャラクタデータ315、仮想カメラデータ316、操作データ317、受信データ318、送信用データ319、撮影画像データ320等が記憶されている。
ゲームプログラム311は、本実施形態に係るゲーム処理を実行するためのプログラムである。
ステージマスタデータ312は、上記ゲームで用いられる各ステージの構成を定義したデータである。具体的には、各ステージの地形を示す情報や各ステージに用意されている各種のギミックの動作等を示す情報が含まれている。
参加ルームデータ313は、各プレイヤが参加しているルームを特定するための情報である。また、参加ルームデータ313には、ルームに参加している各プレイヤを特定する情報(プレイヤID等)、および、当該プレイヤに係るゲーム装置を特定する情報(ネットワークアドレス等)も含まれる。
自キャラクタデータ314は、プレイヤの操作対象となるプレイヤキャラクタに関するデータである。図12は、自キャラクタデータ314のデータ構成の一例を示す図である。図12において、自キャラクタデータ314には、外観データ341、装備データ342、ステータスデータ343、位置データ344、ホストフラグ345、撮影モードフラグ346、タイマーモードフラグ347、等が含まれている。外観データ341は、プレイヤキャラクタの外観を示すデータである。本ゲームでは、プレイヤキャラクタの外観はカスタマイズ可能であり、当該カスタマイズされた外観を示すためのデータが含まれている。装備データ342は、本実施形態の非対戦ゲームにおいて、そのプレイヤキャラクタが装備している武器等を示す情報である。ステータスデータ343は、プレイヤキャラクタのHP等、当該キャラクタに関するパラメータを示す情報である。位置データ344は、ステージ内におけるプレイヤキャラクタの現在位置を示す情報である。ホストフラグ345は、プレイヤがホストプレイヤであるのかゲストプレイヤであるのかを示すためのフラグである。ホストフラグ345がオンの場合は、プレイヤがホストプレイヤであることを示す。撮影モードフラグ346は、プレイヤがホストプレイヤである場合に、操作モードが上記撮影モードであるか、キャラクタ操作モードであるかを示すためのフラグである。撮影モードフラグ346がオンの場合は、操作モードが撮影モードであることを示す。タイマーモードフラグ347は、撮影モード中において、上記のようなタイマー期間中であるか否かを判別するためのフラグである。タイマーモードフラグ347がオンの場合は、タイマー期間中であることを示す。
図11に戻り、他キャラクタデータ315は、本実施形態の複数人非対戦ゲームにおける、他のプレイヤが操作するプレイヤキャラクタに対応するデータである。各プレイヤキャラクタの外観、装備を示す情報や、ステータス情報、ステージ内の現在位置を示す情報等が含まれる。
仮想カメラデータ316は、仮想カメラに関するデータである。当該データには、仮想カメラの位置・姿勢・画角等を示す情報が含まれる。
操作データ317は、プレイヤがコントローラ4に対して行った操作内容を示すデータである。所定の時間間隔でコントローラ4からプロセッサ21に送信されるデータであり、各種ボタンの押下状態を示す情報やアナログスティックに対する入力内容を示す情報等が含まれている。
受信データ318は、他のプレイヤのゲーム装置2から受信した各種データを記憶したものである。
送信用データ319は、他のプレイヤのゲーム装置2に送信するためのデータである。本実施形態では、送信用データ319として以下のような情報が含まれ得る。まず、ホスト/ゲストプレイヤ共通で、各自の操作内容を示す情報(例えば操作データ317の内容)が含まれる。また、送信側のプレイヤがホストプレイヤの場合は、更に、そのときの操作モード(キャラクタ操作モード/撮影モード)を示す情報が含まれる。また、送信側のプレイヤがホストプレイヤの場合は、上記のようなタイマー撮影中であるか否かを示す情報も含まれる。また、上記撮影モードの場合は、上述したような画角線を示す情報も含まれる。当該画角線を示す情報は、例えばホストプレイヤ機における仮想カメラのパラメータ情報であってもよい。
撮影画像データ320は、ホストプレイヤが撮影した撮影画像を記憶するためのデータである。撮影画像データ320として、複数の撮影画像が記憶され得る。
その他、図示は省略するが、ゲーム処理に必要な各種データも記憶部22に記憶される。
次に、本実施形態におけるゲーム処理の詳細を説明する。本実施形態では、1以上のプロセッサが1以上のメモリに記憶された上記プログラムを読み込んで実行することにより、以下に示すフローチャートが実現される。また、当該フローチャートは、処理過程の単なる一例にすぎない。そのため、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、変数の値や、判定ステップで利用される閾値も、単なる一例であり、必要に応じて他の値を採用してもよい。
[サーバ1で実行される処理について]
まず、サーバ1で実行される処理について説明する。図示は省略するが、サーバ1では、主に以下の処理が実行される。まず、プレイヤデータベース302に基づき、各プレイヤを本実施形態に係るゲームにログインさせる処理が実行される。また、ホストプレイヤからの要求に応じて所定のルームを作成し、ルーム管理データベース303に登録する処理が行われる。また、ゲストプレイヤからの要求に応じて、各ゲストプレイヤを当該ルームに参加させる処理も行われる。そして、ルームに参加しているプレイヤのゲーム装置2の間で、上記のようなゲーム処理に関する各種データの送受信を制御するための処理も行われる。
[ゲーム装置2で実行される処理について]
次に、ゲーム装置2で実行される処理について説明する。ここでは、まず、ホストプレイヤ機で実行される処理について説明した後、ゲストプレイヤ機で実行される処理について説明する。また、主に上記複数人非対戦モードにおけるゲーム処理に関して説明し、その他のゲーム処理の詳細についての説明は割愛する。
[ホストプレイヤ機での処理]
図13~図14は、ホストプレイヤ機で実行されるホストプレイヤ処理の詳細を示すフローチャートである。図13~図14で示されるステップS3~S13の処理ループは、1フレーム単位で繰り返される。また、当該処理ループにおいて、ホストプレイヤ機とゲストプレイヤ機との間で各自のプレイヤキャラクタの操作内容等を示すデータが送受信され、その内容を反映したゲーム処理が実行される。そのため、本実施形態の非対戦ゲームは、1フレーム単位で同期させる通信ゲームの例である。
図13において、まず、ステップS1で、ホストプレイヤ機のプロセッサ21は、ホストプレイヤの操作に基づいて、上記のような複数人非対戦ゲームを開始するための準備処理を実行する。具体的には、ホストプレイヤの操作に基づき、仮想的なルームを作成する処理が行われる。ルームが作成されれば、ホストフラグ345をオンに設定する処理が行われ、その後、ホストプレイヤの操作に基づいて、非対戦モードでゲームをプレイするための設定や、ゲームに用いるステージを設定する処理が行われる。非対戦モードでゲームをプレイするための設定操作例としては、例えば、ゲームルールの設定画面において、「非対戦モードのオン/オフ」が切り替え可能なトグルボタンが画面に表示され、これをホストプレイヤがオンにする、という操作がある。また、ホストプレイヤの操作に基づき、参加プレイヤをチーム分けする処理も実行される。その他、複数人非対戦ゲームを開始するための各種の処理が実行される。例えば、ホストキャラクタの装備を選択する処理が実行される。ホストプレイヤは、ゲームの開始準備ができれば、準備完了の旨を示す操作を行う。その後、プロセッサ21は、ゲストプレイヤ機から準備完了を示す通知が来るのを待ち受ける。
ゲームに参加する全てのゲストプレイヤ機から準備完了を示す通知を受信すれば次に、ステップS2で、プロセッサ21は、複数人非対戦ゲームの開始処理を行う。具体的には、複数人非対戦ゲームの開始通知を各ゲストプレイヤ機に送信する。その後、プロセッサ21は、所定のゲーム開始演出を行った後、上記ステージ内に各プレイヤキャラクタ、および仮想カメラを配置する。そして、プロセッサ21は、当該ステージを仮想カメラで撮影した画像に上記通常UIを付加したゲーム画像を表示部5に表示する。
次に、ステップS3で、プロセッサ21は、各ゲストプレイヤ機から送られた送信用データ319を受信し、これらを受信データ318として記憶する。次に、ステップS4で、プロセッサ21は、操作データ317を取得する。
次に、ステップS5で、プロセッサ21は、撮影モードフラグ346に基づき、現在の操作モードが撮影モードか否かを判定する。その結果、撮影モードではない場合は(ステップS5でNO)、ステップS6で、プロセッサ21は、キャラクタ操作モード処理を実行する。一方、撮影モードである場合は(ステップS5でYES)、ステップS7で、プロセッサ21は、撮影モード処理を実行する。以下、この2つの処理について順に説明する。
[キャラクタ操作モード処理]
図15は、当該キャラクタ操作モード処理の詳細を示すフローチャートである。図15において、まず、ステップS21で、プロセッサ21は、撮影モード移行条件が満たされたか否かを判定する。本実施形態では、ホストキャラクタが撮影モードに移行できる状況下にある場合に、マイナスボタンが押下された場合、撮影モード移行条件が満たされたと判定される。ホストキャラクタが撮影モードに移行できる状況とは、ホストキャラクタの状態が安定しているような状況である。例えばホストキャラクタが特殊な攻撃動作を行っている場合(例えば必殺技発動中)等は、そのモーション中はホストキャラクタの状態は不安定であるとして扱われる。また、当該移行条件の他の例として、例えば、ステージ内に設けられている「撮影スポット」の近くに移動した場合に、当該条件が満たされたと判定してもよい。
上記判定の結果、撮影モード移行条件が満たされていない場合(ステップS21でNO)、ステップS22で、プロセッサ21は、操作データ317に基づき、ホストキャラクタの動作制御を行う。すなわち、プロセッサ21は、操作データ317に基づいて、ホストキャラクタを移動させたり、所定の攻撃動作を行わせたりする。また、これに伴い、位置データ344やステータスデータ343の内容も適宜更新される。その後、キャラクタ操作モード処理は終了する。
一方、撮影モード移行条件が満たされた場合は(ステップS21でYES)、撮影モードに移行するための準備処理が行われる。具体的には、まず、ステップS23で、プロセッサ21は、撮影モードフラグ346にオンを設定する。次に、ステップS24で、プロセッサ21は、ホストキャラクタに対するゲストキャラクタの攻撃が無効化されるような設定を行う。本実施形態では、上述した「特殊アーマー」をホストキャラクタに装備させるように装備データ342を更新する処理が実行される。なお、「特殊アーマー」は、不可視のオブジェクトであってもよいし、視認可能なオブジェクトであってもよい。
次に、ステップS25で、プロセッサ21は、上述したようなドローンオブジェクトを仮想カメラの位置に配置する。なお、本実施形態では、仮想カメラの位置とドローンオブジェクトの位置を一致させる例で説明する。但し、他の実施形態では、これらの位置を必ずしも一致させる必要は無く、概ねドローンオブジェクトの位置に仮想カメラがあるということが認識できるような位置であれば、両者の位置は多少ずれていてもよい。
次に、ステップS26で、プロセッサ21は、仮想カメラの画角設定に基づき、上記のような画角線が表示されるような設定を行う。本実施形態では、画角線オブジェクトが配置されるものとする。
次に、ステップS27で、プロセッサ21は、UIを上記図5で示したような撮影UIに変更する。その後、キャラクタ操作モード処理は終了する。
[撮影モード処理]
次に、上記ステップS7の撮影モード処理について説明する。図16~図17は、当該撮影モード処理の詳細を示すフローチャートである。図16において、まず、ステップS31で、プロセッサ21は、上記タイマーモードフラグ347に基づき、現在がタイマー期間中か否かを判定する。タイマー期間中ではない場合は(ステップS31でNO)、ステップS33で、プロセッサ21は、操作データ317に基づき、タイマーのカウントを開始する操作(タイマーモード移行操作)が行われたか否かを判定する。なお、本実施形態では、タイマー時間は10秒固定であり、所定のボタンを押下することで、当該10秒のタイマーのカウントが開始されるものとする。当該判定の結果、タイマーのカウントを開始する操作が行われた場合は(ステップS33でYES)、ステップS34で、プロセッサ21は、タイマーモードフラグ347にオンを設定する。その後、撮影モード処理を終了する。
一方、タイマーのカウントを開始する操作が行われていない場合は(ステップS33でNO)、ステップS35で、プロセッサ21は、操作データ317に基づき、撮影操作が行われたか否かを判定する。撮影操作が行われた場合は(ステップS35でYES)、ステップS36で、プロセッサ21は、その時点の仮想カメラで撮影した仮想空間の画像を撮影画像データ320に保存する。その後、ステップS37に処理が進められる。一方、上記判定の結果、撮影操作が行われていない場合は(ステップS35でNO)、上記ステップS36の処理は行われずに、ステップS37に処理が進められる。
次に、ステップS37で、プロセッサ21は、操作データ317に基づき、仮想カメラの画角を変更する操作(画角変更操作)が行われたか否かを判定する。当該画角変更操作は、例えば、ズームインまたはズームアウトを行う操作等である。当該判定の結果、画角変更操作が行われた場合は(ステップS37でYES)、ステップS38で、プロセッサ21は、操作データ317に基づいて、仮想カメラデータ316の内容を更新する。これにより、仮想カメラの画角変更が行われることになる。その後、ステップS39に処理が進められる。一方、上記判定の結果、画角変更操作が行われていない場合は(ステップS37でNO)、上記ステップS38の処理は行われずに、ステップS39に処理が進められる。
次に、図17のステップS39で、プロセッサ21は、撮影モードを解除するための条件が満たされたか否かを判定する。当該条件は、ホストプレイヤが撮影モード解除操作、本例では、マイナスボタンの押下を行った場合と、ステージから落下する等の上記退場条件が満たされた場合のいずれかである。当該判定の結果、撮影モード解除条件が満たされていない場合は(ステップS39でNO)、ステップS41で、プロセッサ21は、操作データ317に基づき、ドローンオブジェクト、および仮想カメラの移動制御、または姿勢制御を行う。なお、この際、ドローンオブジェクトの移動範囲を、ホストキャラクタを中心とする所定の範囲内に限定するようにしてもよい。ドローンオブジェクトを自由に移動可能とする場合は、様々な位置から撮影が可能になる反面、ホストプレイヤがドローンオブジェクトの現在位置を把握できなくなる可能性もある。そのため、ドローンオブジェクトがホストキャラクタから離れすぎないように移動可能範囲を制限することで、ホストプレイヤは、ホストキャラクタの位置を目印としてドローンオブジェクトの位置を把握しやすくなる。
次に、ステップS42で、プロセッサ21は、ドローンオブジェクト(仮想カメラ)の位置および仮想カメラの画角に基づき、上述したような画角線を生成して仮想空間内に配置する。その後、プロセッサ21は、撮影モード処理を終了する。
[撮影モード解除処理]
一方、上記ステップS39の判定の結果、撮影モード解除条件が満たされていた場合は(ステップS39でYES)、ステップS40で、プロセッサ21は、撮影モード解除処理を実行する。図18は、当該撮影モード解除処理の詳細を示すフローチャートである。図18において、まず、ステップS51で、プロセッサ21は、撮影モードフラグ346にオフを設定する。
次に、ステップS52で、プロセッサ21は、上記ステップS24で設定したホストキャラクタへの攻撃無効化設定を解除する。具体的には、ホストキャラクタが上記「特殊アーマー」を装備していない状態に設定する。
次に、ステップS53で、プロセッサ21は、上記ドローンオブジェクトおよび画角線を消去する。続く、ステップS54で、プロセッサ21は、仮想カメラの位置を上記デフォルトカメラ位置に戻す。更に、ステップS55で、プロセッサ21は、UIを撮影UIから通常UIに変更する。以上で、撮影モード解除処理は終了する。
なお、上記ステップS54の処理に関して、他の実施形態では、仮想カメラをデフォルトカメラ位置に戻す際、一瞬で戻すのではなく、所定の画面演出を挟みつつ数フレームかけて位置変更するようにしてもよい。例えば、画面をワイプさせるような演出を行って、デフォルトカメラ位置から撮影したゲーム画像を表示するようにしてもよい。このように、瞬間的に視点を切り替えず、若干の時間を掛けて切り替えることで、操作モードが撮影モードからキャラクタ制御モードに戻ったことをホストプレイヤに認識させやすくなる。また、キャラクタ操作モードへの移行に伴う操作の準備等をホストプレイヤに行わせることもできる。
[タイマー期間中の処理]
図16に戻り、次に、上記ステップS31の判定の結果、タイマー期間中である場合(ステップS31でYES)の処理について説明する。この場合は、ステップS32で、プロセッサ21は、タイマーモード制御処理を実行する。図19は、当該タイマーモード制御処理の詳細を示すフローチャートである。まず、ステップS61で、プロセッサ21は、タイマーとして設定されている時間(本例ではカウント開始から10秒)が到来したか否かを判定する。当該判定の結果、まだ到来していない場合は(ステップS61でNO)、ステップS63で、プロセッサ21は、上述したような撮影モード解除条件が満たされたか否かを判定する。その結果、満たされている場合は(ステップS63でYES)、ステップS64で、プロセッサ21は、撮影モード解除処理を実行する。当該処理は上記ステップS40(図18で示した処理)と同様の処理であるため、説明は省略する。
次に、ステップ65で、プロセッサ21は、タイマーモードフラグ347にオフを設定する。更に、プロセッサ21は、タイマー画像を消去する処理も行う。その後、プロセッサ21は、タイマーモード制御処理を終了する。つまり、タイマー期間中であってもホストキャラクタがステージから落下する等して、撮影終了条件が満たされた場合は、その時点で撮影モードが強制終了することになる。
一方、上記ステップS63の判定の結果、撮影モード解除条件が満たされていなければ(ステップS63でNO)、ステップS66で、プロセッサ21は、操作データ317に基づき、ホストキャラクタの動作制御を行う。つまり、タイマー期間中は、操作対象がドローンオブジェクトからホストキャラクタに一時的に切り替わることになる。なお、この際、ホストキャラクタは、ゲストキャラクタへの攻撃行動も可能である。つまり、タイマー期間中は、ホストキャラクタは、上記「特殊アーマー」を装備した状態でゲストキャラクタに攻撃を仕掛けることも可能である。
次に、ステップS67で、プロセッサ21は、タイマーのカウントを進める。続くステップS68で、プロセッサ21は、上記タイマー画像が表示されるような設定を行う。その後、プロセッサ21は、タイマーモード制御処理を終了する。
一方、上記ステップS61の判定の結果、タイマーとして設定されている時間が到来した場合は(ステップS61でYES)、ステップS62で、プロセッサ21は、仮想カメラで仮想空間を撮影し、その撮影画像を撮影画像データ320に保存する。その後、上記ステップS65の処理でタイマーモードフラグ347にオフが設定され、タイマーモード制御処理は終了する。
図16に戻り、タイマーモード制御処理が終われば、撮影モード処理は終了する。
[他のキャラクタの動作制御]
図13に戻り、上記のようなキャラクタ操作モード処理、または撮影モード処理が終われば、次に、ステップS8で、プロセッサ21は、受信データ318に基づき、各ゲストキャラクタの動作制御を行う。すなわち、ゲストキャラクタについて、移動や攻撃動作の制御が行われる。
次に、ステップS9で、プロセッサ21は、プレイヤキャラクタ以外の各種オブジェクトの動作制御を行う。例えば、「動く床」等のステージ上の各種ギミックの動作制御を行う。
[各種ゲーム処理]
次に、図14のステップS10で、プロセッサ21は、各オブジェクトの当たり判定を行う。更に、プロセッサ21は、当たり判定の結果に応じた各種のゲーム処理を実行する。当該ゲーム処理としては、例えば、以下のような処理が実行される。
[ホストキャラクタ被弾時の処理]
まず、ゲストキャラクタの攻撃動作によって発射された弾丸がホストキャラクタに衝突(被弾)している場合は、攻撃を受けた際の動作をホストキャラクタに行わせる。この際、ホストキャラクタが上記「特殊アーマー」を装備しているか否かによって、ホストキャラクタに行わせる動作が変わる。「特殊アーマー」を装備していなければ、攻撃を受けたモーション(以下、被弾モーションと呼ぶ)をホストキャラクタに行わせながら、攻撃を受けた方向に基づく所定の方向にホストキャラクタを所定距離移動させる処理が行われる。また、所定のダメージをホストキャラクタに与える処理、例えばHPの減算処理も行われる。一方、「特殊アーマー」を装備している場合は、受けた攻撃を無効化させる処理が実行される。具体的には、本実施形態では、受けた弾丸をその場で消滅させるような処理が行われる。その結果、当該攻撃によるホストキャラクタの移動は発生せず、被弾モーションも行われず、ダメージも発生しないことになる。なお、ここでは「被弾」の場合を例示したが、射撃以外の攻撃、例えば打撃等の攻撃をホストキャラクタが受けた場合も同様に、その攻撃が無効化されるような処理が行われる。例えば、打撃攻撃した方のゲストキャラクタが、のけぞる、あるいは、はじき返されるようなモーションを行う等の処理が行われる。なお、攻撃を無効化させる具体的な処理については、上記の処理は一例に過ぎず、他の手法や演出を用いてもよい。
[ゲストキャラクタ被弾時の処理]
また、ゲストキャラクタが被弾した、あるいはその他の種類の攻撃を受けた場合は、その被弾内容に基づき、被弾モーションによって各ゲストキャラクタを移動させたり、各ゲストキャラクタに所定のダメージを与える処理が行われる。
[ステージギミック等による移動処理]
また、各プレイヤキャラクタについて、例えば動く床等のステージギミック、に基づく移動制御等も行われる。その結果、プレイヤキャラクタのステージからの落下が発生することもある。
[退場条件の判定]
また、各プレイヤキャラクタについて退場条件が満たされたか否かの判定も行われる。具体的には、上記各種攻撃を受けた結果、HPが0になった場合は退場条件が満たされたと判定され、そのキャラクタをリスポーンさせる処理が実行される。また、他の退場条件として、プレイヤキャラクタがステージから落下した場合も、退場条件が満たされたと判定され、そのプレイヤキャラクタをリスポーンさせる処理が実行される。例えば、この後、数秒かけてリスポーンの演出が表示されるような設定が行われる。なお、上記のように、ホストキャラクタが「特殊アーマー」を装備している状態でも、ステージ落下による退場は発生し得る。
その他、必要に応じて上記以外の各種ゲーム処理も実行され得る。
[データ送信]
次に、ステップS11で、プロセッサ21は、ホストキャラクタのそのときの操作モードに応じた送信用データ319を生成する。そして、プロセッサ21は、当該送信用データ319を、参加ルームデータ313に基づき特定される他のゲーム装置2に送信する。具体的には、プロセッサ21は、操作モードがキャラクタ操作モードの場合は、ホストプレイヤの操作内容を示す情報と、操作モードが「キャラクタ操作モード」であることを示す情報とを含めた送信用データ319を生成する。一方、操作モードが「撮影モード」の場合は、プロセッサ21は、ホストプレイヤの操作内容を示す情報に加えて、次のような情報を含めた送信用データ319を生成する。すなわち、操作モードが「撮影モード」であることを示す情報と、「タイマー期間中」であるか否かを示す情報と、上記画角線に関する情報が含まれた送信用データ319が生成される。これらの情報は、上記操作データ317、撮影モードフラグ346、タイマーモードフラグ347、仮想カメラデータ316に基づいて生成される。そして、プロセッサ21は、当該生成された送信用データ319を、ゲストプレイヤ機に送信する。
次に、ステップS12で、プロセッサ21は、上記の処理が反映されたゲーム画像を表示する処理を行う。
次に、ステップS13で、プロセッサ21は、複数人非対戦モードに係るゲーム処理の終了条件が満たされたか否かを判定する。具体的には、制限時間が経過したか、ゲームを終了するためのプレイヤからの明示的な操作があった場合に、終了条件が満たされたと判定される。当該判定の結果、まだ終了条件が満たされていない場合は(ステップS13でNO)、上記ステップS3に戻り、処理が繰り返される。
一方、終了条件が満たされた場合は(ステップS13でYES)、ステップS14で、プロセッサ21は、今回の複数人非対戦モードに係るゲーム処理で撮影された撮影画像のデータを他のゲーム装置2に送信する。その後、プロセッサ21は、ホストプレイヤ処理を終了する。
[ゲストプレイヤ機での処理]
次に、ゲストプレイヤ機で実行されるゲストプレイヤ処理について説明する。図20~図21は、ゲストプレイヤ処理の詳細を示すフローチャートである。図20~図21のステップS72~S86の処理ループは、1フレーム単位で繰り返される。なお、当該処理の実行に先立ち、ゲストプレイヤは、ルームへの入室とゲームの開始準備は済ませているものとする。そして、ゲストプレイヤは準備完了操作を行い、ゲームの開始待ちの状態であるものとする。
図20において、まず、ステップS71で、ゲストプレイヤ機のプロセッサ21は、ホストプレイヤ機からのゲーム開始通知を受信したことに応じて、複数人非対戦ゲームの開始処理を行う。具体的には、プロセッサ21は、所定のゲーム開始演出を行った後、上記ステージ内に各プレイヤキャラクタ、および仮想カメラを配置する。そして、プロセッサ21は、当該ステージを仮想カメラで撮影した画像に上記通常UIを付加したゲーム画像を表示部5に表示する。なお、ゲストプレイヤ機においては、上記ホストフラグ345はオフに設定される。
次に、ステップS72で、プロセッサ21は、ホストプレイヤ機および他のゲストプレイヤ機から送られたデータを受信し、受信データ318として記憶する。次に、ステップS73で、プロセッサ21は、操作データ317を取得する。
次に、ステップS74で、プロセッサ21は、操作データに基づき、ゲストキャラクタの動作制御を行う。
次に、ステップS75で、プロセッサ21は、受信データ318に基づき、ホストキャラクタ、および、他のゲストキャラクタの動作制御を行う。
次に、ステップS76で、プロセッサ21は、ホストプレイヤ機から受信したデータに基づき、ホストプレイヤ機の操作モードが「撮影モード」か否かを判定する。当該判定の結果、撮影モードの場合は(ステップS76でYES)、ステップS77で、プロセッサ21は、ホストキャラクタについて攻撃無効化の設定を行う。本例では、プロセッサ21は、上記「特殊アーマー」をホストキャラクタに装備させる処理を行う。なお、既に「特殊アーマー」を装備済みの状態であれば、当該処理はスキップしてもよい。
次に、ステップS78で、プロセッサ21は、ホストプレイヤ機から受信したデータに基づき、ドローンオブジェクトの配置または移動制御を行う、更に、プロセッサ21は、当該受信データに基づき、上記のような画角線の配置または移動を行う。その後、後述のステップS81に処理が進められる。
一方、上記ステップS76の判定の結果、上記操作モードが「撮影モード」ではない場合は(ステップS76でNO)、ステップS79で、プロセッサ21は、ホストキャラクタに攻撃無効化設定がなされている場合は、当該攻撃無効化設定を解除する。本例では、ホストキャラクタから上記「特殊アーマー」の装備を外す処理が行われる。
次に、ステップS80で、プロセッサ21は、ドローンオブジェクトが仮想空間内に存在している場合は、当該ドローンオブジェクトおよび上記画角線を消去する。その後、ステップS81に処理が進められる。
次に、図21のステップS81で、プロセッサ21は、ホストプレイヤ機から受信したデータに基づき、ホストプレイヤ機が現在、上記のようなタイマー期間中か否かを判定する。当該判定の結果、タイマー期間中の場合は(ステップS81でYES)、ステップS82で、プロセッサ21は、上記図9で示したようなタイマー画像を表示するための設定を行う。具体的には、タイマーのカウント開始直後であって、タイマー画像が表示されていない場合は、タイマー画像がUIとして表示されるような表示設定が行われる。既にタイマー画像の表示設定が行われている場合は、タイマー画像の表示設定を行ってからの経過時間に応じてタイマー画像の表示内容を変更する。その後、ステップS84に処理が進められる。
なお、タイマー画像の表示に関して、本例ではタイマー画像の表示設定を行ってからの経過時間をゲストプレイヤ機でカウントする例を挙げている。この点、他の実施形態では、ホストプレイヤ機において送信用データ319にタイマーの残り時間を示す情報を含めてもよい。そして、ゲストプレイヤ機では、当該情報に基づいてタイマー画像の表示内容を変更してもよい。
一方、上記ステップS81の判定の結果、タイマー期間中ではない場合は(ステップS81でNO)、ステップS83で、プロセッサ21は、タイマー画像の表示設定がされていれば、当該タイマー画像を表示しないような設定を行う。その後、ステップS84に処理が進められる。
次に、ステップS84で、プロセッサ21は、プレイヤキャラクタ以外の各種オブジェクトの動作制御を行う。続くステップS85で、プロセッサ21は、各オブジェクトの当たり判定を行う。更に、プロセッサ21は、当たり判定の結果に応じた各種のゲーム処理を実行する。当該ステップS84およびステップS85の処理は、上記図13のステップS9および図14のステップS10と同様の処理である。そのため、詳細な説明は省略するが、ゲストプレイヤ機においても、上記「特殊アーマー」装備中のホストキャラクタに対する攻撃は無効化される処理が行われることになる。
次に、ステップS86で、プロセッサ21は、送信用データ319を生成する。そして、プロセッサ21は、当該送信用データ319を他のゲーム装置に送信する。この処理はゲストプレイヤに係る処理であるため、送信用データ319には、ゲストプレイヤの操作内容を示すデータが含まれる。
次に、ステップS87で、プロセッサ21は、上記の処理が反映されたゲーム画像を表示する処理を行う。
次に、ステップS88で、プロセッサ21は、複数人非対戦モードに係るゲーム処理の終了条件が満たされたか否かを判定する。具体的には、制限時間が経過したか、ゲームを終了するためのプレイヤからの明示的な操作があった場合に、終了条件が満たされたと判定される。当該判定の結果、まだ終了条件が満たされていない場合は(ステップS88でNO)、上記ステップS72に戻り、処理が繰り返される。
一方、終了条件が満たされた場合は(ステップS88でYES)、ステップS89で、プロセッサ21は、ホストプレイヤ機から送信された撮影画像データ320を受信し、記憶部22に記憶する。その後、プロセッサ21は、ゲストプレイヤ処理を終了する。
なお、上記撮影画像については、複数人非対戦モードに係るゲームの終了後に、所定の態様でプレイヤに提示される。例えば、複数人非対戦モードに係るゲームが終了してルームに戻った際に、撮影画像がある場合は、当該ルーム内に、写真が貼られている壁やボードが表示される。そして、各プレイヤキャラクタを当該壁やボードの前に移動させ、各プレイヤが所定のボタンを押下することで、撮影画像の一覧画面が表示される。各プレイヤは、必要に応じて、所定の撮影画像を選択し、各自のゲーム装置2にダウンロードすることが可能である。
以上で、本実施形態のゲーム処理の詳細説明を終了する。
このように、本実施形態では、複数のプレイヤが参加するゲームの実行中に、所定のプレイヤが撮影を行う場合、当該撮影を行うプレイヤのキャラクタに対する他プレイヤのキャラクタからの攻撃を無効化する。これにより、当該撮影を行うプレイヤのキャラクタが当該攻撃によって上記退場条件を満たしてしまうことを防ぎ、当該プレイヤに円滑に撮影作業を行わせることができる。
[変形例]
なお、上記撮影モードについては、上記1人非対戦モードにおいても利用可能である。ここで、本ゲームでは、1人非対戦モードにおいて、上記撮影モードに移行した場合、プレイヤキャラクタ以外のゲーム内の時間経過を停止させてもよい。すなわち、仮想空間内の全てのオブジェクトの動作を停止させる。一方、「複数人非対戦モード」の場合は、撮影モードに移行しても、このような時間の停止は行わないようにしている。これは、仮に「複数人非対戦モード」において、ホストプレイヤが撮影モードに移行する度にゲーム内時間を停止させると、ゲストプレイヤに混乱を招いてしまうため、この場合は時間停止は行わない。「1人非対戦モード」であれば、プレイヤが1人だけであるため、時間を停止しても他プレイヤに影響を及ぼすことがない。また、特定の場面(瞬間)を撮影したい場合、ゲーム内時間が停止していた方が都合が良いこともあるため、「1人非対戦モード」では、撮影モードに移行したときはゲーム内時間を停止させてもよい。
また、上記ホストキャラクタの攻撃無効化設定に関して、上記実施形態では、ゲストキャラクタからの攻撃による退場を防止するという目的で上記のような攻撃無効化設定を行う例を挙げた。この点、他の実施形態では、退場に限らず、攻撃によってホストキャラクタに(退場すること以外の)何らかの不利益が発生することを全般的に防ぐようにしてもよい。例えば、HPが0になっても、その場で一時的に動けなくなるだけでステージから退場させるという構成を採っていないようなゲームであれば、HPが0になることを防止するような設定を行えばよい。
また、ホストプレイヤが撮影した画像をゲストプレイヤに送信する手法については、上記のような手法に限らず、どのような手法で送信してもよい。例えば、ホストプレイヤが撮影を行う度に、即時にゲストプレイヤに撮影画像が送信されるようにしてもよい。また、例えば、複数人非対戦ゲームの終了後、ホストプレイヤ機において所定の編集画面が表示され、ホストプレイヤはゲストプレイヤに送信する撮影画像を選択できるようにしてもよい。また、その送信相手も選択可能としてもよい。つまり、送信相手と送信する撮影画像をホストプレイヤが個別に選択できるようにしてもよい。また、撮影画像をゲストプレイヤに送信する前の段階で、ホストプレイヤが撮影画像に簡単な編集・加工を行えるように構成してもよい。例えば、撮影画像に所定のアイコンやフレームを加えることや、撮影画像をセピア調やモノクロ画像等に加工することが可能なようにしてもよい。
また、上記実施形態では、撮影モードに移行できるのはホストプレイヤだけである場合を例示した。他の実施形態では、ゲストプレイヤも撮影モードに移行できるように構成してもよい。この場合、同時に撮影モードに移行できるのは1人までとしてもよい。つまり、参加者のうちのいずれか1人だけが、撮影モードに移行して撮影が可能であるように構成してもよい。
また、上記実施形態では、ホストプレイヤ機からゲストプレイヤ機の同期のために送信するデータをキャラクタ操作モードの場合と撮影モードの場合とで異ならせる例を挙げた。他の実施形態では、いずれのモードの場合も、ホストプレイヤ機から送信するデータとして、ホストプレイヤが行った操作に関するデータ、および送受信制御用のデータだけを送信するようにしてもよい。この場合は、ゲストプレイヤ機において、ホストプレイヤが操作モードを切り替える操作を行ったことを判別すればよい。そして、撮影モードへの切り替え操作があった場合に、ホストキャラクタに上記のような攻撃無効化設定を行うようにすればよい。
また、上記実施形態においては、ホストプレイヤ処理、ゲストプレイヤ処理自体は単一のゲーム装置2で実行される場合を説明した。他の実施形態においては、これらの処理は複数の情報処理端末からなる情報処理システムにおいて実行されてもよい。例えば、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記ホストプレイヤ処理やゲストプレイヤ処理のうちの一部の処理がサーバ側装置によって実行されてもよい。更には、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの主要な処理がサーバ側装置によって実行され、当該端末側装置では一部の処理が実行されてもよい。また、上記情報処理システムにおいて、サーバ側のシステムは、複数の情報処理端末によって構成され、サーバ側で実行するべき処理を複数の情報処理端末が分担して実行してもよい。また、いわゆるクラウドゲーミングの構成としてもよい。例えば、ゲーム装置2は、ユーザの操作を示す操作データを所定のサーバに送り、当該サーバにおいて各種ゲーム処理が実行され、その実行結果が動画・音声としてゲーム装置2にストリーミング配信されるような構成としてもよい。
2 ゲーム装置
4 コントローラ
5 表示部
21 プロセッサ
22 記憶部
23 無線通信部
24 コントローラ通信部
25 画像音声出力部

Claims (15)

  1. 少なくとも1つの第2端末と通信可能な第1端末のコンピュータによって実行される情報処理プログラムであって、
    前記第2端末との間でゲーム状況を同期するゲームを実行するゲーム実行手段、
    前記ゲームにおいて前記第1端末の第1プレイヤの操作モードがキャラクタ操作モードである場合において、
    前記第1プレイヤによる操作入力に基づいて、仮想空間内の第1キャラクタに、当該仮想空間のゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせる第1キャラクタ制御手段、
    前記第2端末から受信した通信データに基づいて、前記仮想空間内の第2キャラクタに、前記ゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせる第2キャラクタ制御手段、
    前記第2キャラクタによる前記攻撃動作によって前記第1キャラクタの退場条件が満たされた場合、当該第1キャラクタを前記ゲームステージから少なくとも一時的に退場させる第1キャラクタ退場手段、
    前記ゲームにおいて前記第1プレイヤに関する操作モード変更条件が満たされた場合、当該第1プレイヤの操作モードを前記キャラクタ操作モードから撮影モードに切り替える操作モード切替手段、
    前記ゲームにおいて前記第1プレイヤの操作モードが前記撮影モードである場合において、
    前記第1プレイヤによる操作入力に基づいて、前記仮想空間内を撮影するための撮影用仮想カメラの位置、姿勢、画角のうち少なくともいずれかを制御する撮影用仮想カメラ制御手段、
    前記第1プレイヤによる画像保存操作入力に応じて、前記撮影用仮想カメラに基づいた画像を保存する画像保存手段、
    前記第1キャラクタの前記退場条件が前記第2キャラクタの前記攻撃動作によって満たされないように、当該第2キャラクタによる第1キャラクタに対する攻撃を無効化する、あるいは、当該攻撃動作による当該第1キャラクタの前記ゲームステージからの退場を無効化する退場無効化手段、
    として前記コンピュータを機能させる、情報処理プログラム。
  2. 前記第1プレイヤの操作モードが前記撮影モードである場合は、当該第1プレイヤによる操作入力に基づく前記第1キャラクタの制御は制限される、請求項1に記載の情報処理プログラム。
  3. 前記情報処理プログラムは、
    前記第1プレイヤの操作モードが前記撮影モードである場合に、
    所定の時間が設定されたタイマーのカウントを開始するタイマー開始手段、
    前記カウントの開始後、前記タイマーが前記所定の時間に達すると前記撮影用仮想カメラに基づいた画像を保存する自動画像保存手段、
    として前記コンピュータを更に機能させ、
    前記タイマーのカウント開始後、前記所定の時間に達するまでの間は、前記第1プレイヤによる前記操作入力に基づく前記撮影用仮想カメラの制御が制限され、当該操作入力に基づく前記第1キャラクタの制御の制限は解除される、請求項2に記載の情報処理プログラム
  4. 前記情報処理プログラムは、
    前記タイマーのカウント開始後、前記所定の時間に達するまでの間は、当該所定の時間に達するまでの時間を表すタイマー画像を表示するタイマー画像表示手段、
    前記タイマー画像を前記第2端末において表示させるための情報を当該第2端末に送信するタイマー情報送信手段、
    として前記コンピュータを更に機能させる、請求項3に記載の情報処理プログラム。
  5. 前記情報処理プログラムは、
    前記第1プレイヤの操作モードが前記キャラクタ操作モードから前記撮影モードに切り替えられたとき、前記撮影用仮想カメラに対応する位置にドローンオブジェクトを配置するドローン配置手段、
    前記第1プレイヤの操作モードが前記撮影モードである場合、前記第1プレイヤによる前記操作入力に基づく前記撮影用仮想カメラの制御内容に応じて、前記ドローンオブジェクトの位置および姿勢の少なくとも一方を制御するドローン制御手段、
    として前記コンピュータを更に機能させる、請求項1に記載の情報処理プログラム。
  6. 前記情報処理プログラムは、前記第1プレイヤの操作モードが前記撮影モードである場合、
    前記撮影用仮想カメラの撮影範囲を表す撮影範囲画像を表示する撮影範囲表示手段、
    前記第1端末における前記撮影範囲画像を前記第2端末において表示させるための情報を当該第2端末に送信する撮影範囲情報送信手段、
    として前記コンピュータを更に機能させる、請求項5に記載の情報処理プログラム。
  7. 前記撮影用仮想カメラの画角は、前記第1プレイヤによる画角変更操作入力に応じて変更可能であり、
    前記撮影範囲表示手段は、前記画角の変更に応じて前記撮影範囲画像を更新し、
    前記撮影範囲情報送信手段は、前記画角の変更後の前記撮影範囲画像を前記第2端末において表示させるための情報を当該第2端末に送信する、請求項6に記載の情報処理プログラム。
  8. 前記第1キャラクタ退場手段は、前記第2キャラクタの前記攻撃動作にかかわらず前記第1キャラクタの退場条件が満たされた場合には前記第1プレイヤの操作モードにかかわらず、当該第1キャラクタを前記ゲームステージから少なくとも一時的に退場させ、
    前記操作モード切替手段は、前記操作モードが前記撮影モードである場合に前記第1キャラクタについての前記退場条件が満たされた場合は、当該操作モードを前記キャラクタ操作モードに切り替える、請求項1に記載の情報処理プログラム。
  9. 前記第1プレイヤの操作モードが前記撮影モードである場合であっても、前記第2キャラクタに対する攻撃は無効化されない、請求項1に記載の情報処理プログラム。
  10. 前記ゲーム実行手段は、前記第2端末との通信を伴わずに前記第1端末だけで前記ゲームを実行可能であり
    前記操作モード切替手段は、
    前記第2端末との通信を伴わずに前記ゲームが実行される場合は、前記操作モードを前記キャラクタ操作モードから前記撮影モードに切り替えたとき、前記ゲーム内の時間経過を停止させ、前記撮影モードから前記キャラクタ操作モードに切り替えたときは当該時間経過の停止を解除し、
    前記第2端末との間でゲーム状況を同期しながら前記ゲームが実行される場合は、前記操作モードを前記キャラクタ操作モードから前記撮影モードに切り替えたときでも、前記ゲーム内の時間経過を停止させない、請求項1に記載の情報処理プログラム。
  11. 前記情報処理プログラムは、
    前記保存された画像を前記第2端末に送信する保存画像送信手段、
    として前記コンピュータを更に機能させる、請求項1に記載の情報処理プログラム。
  12. 前記情報処理プログラムは、前記ゲームに参加するプレイヤが集合可能な仮想ルームを生成する仮想ルーム生成手段として前記コンピュータを更に機能させ、
    前記ゲームに参加するプレイヤのうち、前記仮想ルームを作成したプレイヤが前記第1プレイヤとなり、当該第1プレイヤだけが前記操作モードを前記キャラクタ操作モードから撮影モードに切り替えることが可能である、請求項5に記載の情報処理プログラム。
  13. 第1の情報処理端末および第2の情報処理端末を少なくとも有する情報処理システムであって、
    前記第1の情報処理端末は、
    前記第2の情報処理端末との間でゲーム状況を同期するゲームを実行するゲーム実行手段、
    前記ゲームにおいて前記第1の情報処理端末の第1プレイヤの操作モードがキャラクタ操作モードである場合において、
    前記第1プレイヤによる操作入力に基づいて、仮想空間内の第1キャラクタに、当該仮想空間のゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせる第1キャラクタ制御手段、
    前記第2の情報処理端末から受信した通信データに基づいて、前記仮想空間内の第2キャラクタに、前記ゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせる第2キャラクタ制御手段、
    前記第2キャラクタによる前記攻撃動作によって前記第1キャラクタの退場条件が満たされた場合、当該第1キャラクタを前記ゲームステージから少なくとも一時的に退場させる第1キャラクタ退場手段、
    前記ゲームにおいて前記第1プレイヤに関する操作モード変更条件が満たされた場合、当該第1プレイヤの操作モードを前記キャラクタ操作モードから撮影モードに切り替える操作モード切替手段、
    前記ゲームにおいて前記第1プレイヤの操作モードが前記撮影モードである場合において、
    前記第1プレイヤによる操作入力に基づいて、前記仮想空間内を撮影するための撮影用仮想カメラの位置、姿勢、画角のうち少なくともいずれかを制御する撮影用仮想カメラ制御手段、
    前記第1プレイヤによる画像保存操作入力に応じて、前記撮影用仮想カメラに基づいた画像を保存する画像保存手段、
    前記第1キャラクタの前記退場条件が前記第2キャラクタの前記攻撃動作によって満たされないように、当該第2キャラクタによる第1キャラクタに対する攻撃を無効化する、あるいは、当該攻撃動作による当該第1キャラクタの前記ゲームステージからの退場を無効化する退場無効化手段、
    とを備える、情報処理システム。
  14. 少なくとも1つの他の情報処理装置と通信可能な情報処理装置であって、
    前記他の情報処理装置との間でゲーム状況を同期するゲームを実行するゲーム実行手段、
    前記ゲームにおいて前記情報処理装置の第1プレイヤの操作モードがキャラクタ操作モードである場合において、
    前記第1プレイヤによる操作入力に基づいて、仮想空間内の第1キャラクタに、当該仮想空間のゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせる第1キャラクタ制御手段、
    前記他の情報処理装置から受信した通信データに基づいて、前記仮想空間内の第2キャラクタに、前記ゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせる第2キャラクタ制御手段、
    前記第2キャラクタによる前記攻撃動作によって前記第1キャラクタの退場条件が満たされた場合、当該第1キャラクタを前記ゲームステージから少なくとも一時的に退場させる第1キャラクタ退場手段、
    前記ゲームにおいて前記第1プレイヤに関する操作モード変更条件が満たされた場合、当該第1プレイヤの操作モードを前記キャラクタ操作モードから撮影モードに切り替える操作モード切替手段、
    前記ゲームにおいて前記第1プレイヤの操作モードが前記撮影モードである場合において、
    前記第1プレイヤによる操作入力に基づいて、前記仮想空間内を撮影するための撮影用仮想カメラの位置、姿勢、画角のうち少なくともいずれかを制御する撮影用仮想カメラ制御手段、
    前記第1プレイヤによる画像保存操作入力に応じて、前記撮影用仮想カメラに基づいた画像を保存する画像保存手段、
    前記第1キャラクタの前記退場条件が前記第2キャラクタの前記攻撃動作によって満たされないように、当該第2キャラクタによる第1キャラクタに対する攻撃を無効化する、あるいは、当該攻撃動作による当該第1キャラクタの前記ゲームステージからの退場を無効化する退場無効化手段、
    とを備える、情報処理装置。
  15. 少なくとも1つの第2端末と通信可能な第1端末のコンピュータに実行させる情報処理方法であって、
    前記コンピュータに、
    前記第2端末との間でゲーム状況を同期するゲームを実行させ、
    前記ゲームにおいて前記第1端末の第1プレイヤの操作モードがキャラクタ操作モードである場合において、
    前記第1プレイヤによる操作入力に基づいて、仮想空間内の第1キャラクタに、当該仮想空間のゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせ、
    前記第2端末から受信した通信データに基づいて、前記仮想空間内の第2キャラクタに、前記ゲームステージにおける移動動作または攻撃動作のうち少なくともいずれかを行わせ、
    前記第2キャラクタによる前記攻撃動作によって前記第1キャラクタの退場条件が満たされた場合、当該第1キャラクタを前記ゲームステージから少なくとも一時的に退場させ、
    前記ゲームにおいて前記第1プレイヤに関する操作モード変更条件が満たされた場合、当該第1プレイヤの操作モードを前記キャラクタ操作モードから撮影モードに切り替えさせ、
    前記ゲームにおいて前記第1プレイヤの操作モードが前記撮影モードである場合において、
    前記第1プレイヤによる操作入力に基づいて、前記仮想空間内を撮影するための撮影用仮想カメラの位置、姿勢、画角のうち少なくともいずれかを制御させ、
    前記第1プレイヤによる画像保存操作入力に応じて、前記撮影用仮想カメラに基づいた画像を保存させ、
    前記第1キャラクタの前記退場条件が前記第2キャラクタの前記攻撃動作によって満たされないように、当該第2キャラクタによる第1キャラクタに対する攻撃を無効化する、あるいは、当該攻撃動作による当該第1キャラクタの前記ゲームステージからの退場を無効化させる、
    情報処理方法。
JP2022181366A 2022-11-11 2022-11-11 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法 Active JP7457775B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022181366A JP7457775B2 (ja) 2022-11-11 2022-11-11 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法
US18/502,417 US20240157238A1 (en) 2022-11-11 2023-11-06 Computer-readable non-transitory storage medium having information processing program stored therein, information processing system, information processing apparatus, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022181366A JP7457775B2 (ja) 2022-11-11 2022-11-11 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法

Publications (2)

Publication Number Publication Date
JP2023016051A JP2023016051A (ja) 2023-02-01
JP7457775B2 true JP7457775B2 (ja) 2024-03-28

Family

ID=85130920

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022181366A Active JP7457775B2 (ja) 2022-11-11 2022-11-11 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法

Country Status (2)

Country Link
US (1) US20240157238A1 (ja)
JP (1) JP7457775B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7420428B1 (ja) 2023-09-22 2024-01-23 クラスター株式会社 プログラム、情報処理装置および情報処理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004070821A (ja) 2002-08-08 2004-03-04 Sega Corp ネットワークシステムの制御方法
JP2019037614A (ja) 2017-08-28 2019-03-14 任天堂株式会社 ゲームシステム、ゲームプログラム、ゲーム装置、および、ゲーム処理方法
JP2020103796A (ja) 2018-12-28 2020-07-09 株式会社バンダイナムコエンターテインメント ゲームシステム及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004070821A (ja) 2002-08-08 2004-03-04 Sega Corp ネットワークシステムの制御方法
JP2019037614A (ja) 2017-08-28 2019-03-14 任天堂株式会社 ゲームシステム、ゲームプログラム、ゲーム装置、および、ゲーム処理方法
JP2020103796A (ja) 2018-12-28 2020-07-09 株式会社バンダイナムコエンターテインメント ゲームシステム及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ビルドメニュー,No Man's Sky(ノーマンズスカイ)日本語Wiki[online],2022年10月22日,インターネット<URL:https://nomanssky.fandom.com/ja/wiki/ビルドメニュー?oldid=33165>,[2024年2月29日検索]

Also Published As

Publication number Publication date
US20240157238A1 (en) 2024-05-16
JP2023016051A (ja) 2023-02-01

Similar Documents

Publication Publication Date Title
US10912998B2 (en) Network game system for executing event in network game
US10016680B2 (en) Apparatus and method for displaying player character showing special movement state in network game
JP4545809B2 (ja) ゲーム装置及びプログラム
JP5622446B2 (ja) ゲームプログラム、ゲーム装置、ゲーム制御方法およびゲームシステム
JP5783686B2 (ja) ゲームプログラム、ゲーム装置、ゲームシステムおよびゲーム制御方法
JP4050658B2 (ja) ゲーム装置、ゲーム制御プログラムおよびそのプログラムが記録された記録媒体
JP7457775B2 (ja) 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法
JP2024094422A (ja) ゲームプログラム、情報処理システム、情報処理装置、および、ゲーム処理方法
US12023587B2 (en) Storage medium, information processing system, information processing apparatus, and game processing method
JP6475816B2 (ja) ネットワークゲームシステム、ゲーム装置、及びプログラム
JP2003230764A (ja) 描画処理方法、コンピュータに実行させるための描画処理プログラム、コンピュータに実行させるための描画処理プログラムを記録したコンピュータ読み取り可能な記録媒体、描画処理実行装置
JP2011024636A (ja) ビデオゲーム装置及び表示モード切替制御方法
JP5632497B2 (ja) ネットワークゲームシステム、ゲーム装置、及びプログラム
JP2011024635A (ja) ビデオゲーム装置及びゲーム画像表示制御方法
JP6272450B2 (ja) ネットワークゲームシステム、ゲーム装置、及びプログラム
JP6121376B2 (ja) ネットワークゲームシステム、ゲーム装置、及びプログラム
JP7455171B2 (ja) ゲームプログラム、情報処理システム、および、ゲーム処理方法
JP6827481B2 (ja) ネットワークゲームシステム、ゲーム装置、及びプログラム
JP7208534B2 (ja) ゲームプログラムおよびゲームシステム
JP2024087282A (ja) プログラム、情報処理方法、ゲーム制御装置及びゲーム制御方法
JP2007296107A (ja) ビデオゲーム処理装置、ビデオゲーム処理方法、およびビデオゲーム処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230406

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240215

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240305

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240315

R150 Certificate of patent or registration of utility model

Ref document number: 7457775

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150