(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-11
(45)【発行日】2024-11-19
(54)【発明の名称】プログラム、情報処理システム
(51)【国際特許分類】
A63F 13/55 20140101AFI20241112BHJP
A63F 13/52 20140101ALI20241112BHJP
A63F 13/525 20140101ALI20241112BHJP
A63F 13/58 20140101ALI20241112BHJP
A63F 13/79 20140101ALI20241112BHJP
【FI】
A63F13/55
A63F13/52
A63F13/525
A63F13/58
A63F13/79
(21)【出願番号】P 2021092470
(22)【出願日】2021-06-01
【審査請求日】2023-02-01
【審判番号】
【審判請求日】2024-02-02
(73)【特許権者】
【識別番号】509070463
【氏名又は名称】株式会社コロプラ
(74)【代理人】
【識別番号】100148563
【氏名又は名称】山本 実
(72)【発明者】
【氏名】角田 亮二
(72)【発明者】
【氏名】松原 夏葉
(72)【発明者】
【氏名】澤田 純希
【合議体】
【審判長】渋谷 知子
【審判官】藤田 年彦
【審判官】眞壁 隆一
(56)【参考文献】
【文献】特開2020-103526(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24
A63F 13/00-13/98
(57)【特許請求の範囲】
【請求項1】
コンピュータを、
ユーザに対応するキャラクタを仮想空間に配置するキャラクタ配置手段と、
特定の条件が成立した場合に、前記キャラクタの状態を第1状態から第2状態に変更する状態変更手段と、
前記ユーザによる第1操作情報に応じて、前記仮想空間で前記キャラクタを移動させる移動手段と、
前記キャラクタの状態が前記第2状態である場合に、前記仮想空間における、前記キャラクタの移動を規制する規制手段と、
前記キャラクタの状態が前記第2状態である場合に、前記ユーザによる第2操作情報に応じて、1以上の特定オブジェクトを前記仮想空間に配置する特定オブジェクト配置手段と、として機能させ、
前記仮想空間は、第1ユーザ、第2ユーザ、及び第3ユーザによって共有され、
前記第1ユーザと前記第3ユーザとは、同じ第1属性であり、前記第2ユーザは、第2属性であり、
前記キャラクタ配置手段は、前記第1ユーザに対応するキャラクタ、前記第2ユーザに対応するキャラクタ、及び前記第3ユーザに対応するキャラクタを前記仮想空間に配置し、
前記第1ユーザに対応するキャラクタの状態が前記第1状態であり、前記第2ユーザに対応するキャラクタの状態が前記第1状態であり、かつ前記第3ユーザに対応するキャラクタの状態が前記第2状態である場合に、前記第3ユーザによる前記第2操作情報に応じて前記特定オブジェクトが前記仮想空間に配置されたときには、前記第3ユーザによる前記第2操作情報に応じて配置された前記特定オブジェクトであって、かつ共通の前記特定オブジェクトが、前記仮想空間を共有する前記第1ユーザ及び前記第2ユーザの
双方から共通して視認可能に表示され
、
前記特定オブジェクトには、前記第1属性を有する前記第1ユーザ、及び前記第2属性を有する前記第2ユーザのうち、一方のユーザに対して効果を発揮するが他方のユーザに対して効果を発揮しないように構成されるオブジェクトを含み、当該オブジェクトは、前記第1属性を有する前記第1ユーザ、及び前記第2属性を有する前記第2ユーザの双方から共通して視認可能に表示される、プログラム。
【請求項2】
前記仮想空間は、当該仮想空間に配置された各キャラクタが移動できるフィールドを含み、
前記仮想空間に配置されたキャラクタのうち前記第1状態から前記第2状態に変更されたキャラクタは、前記フィールドに表示されない、請求項1に記載のプログラム。
【請求項3】
前記1以上の特定オブジェクトは、第1特定オブジェクト、及び第2特定オブジェクトのうち少なくとも1つを含み、
前記第1特定オブジェクトは、少なくとも前記第2ユーザに対応するキャラクタが通過することを規制するオブジェクトであり、
前記第2特定オブジェクトは、少なくとも前記第1ユーザに対応するキャラクタに対応するパラメータ値を回復させることができるオブジェクトである、請求項1又は請求項2に記載のプログラム。
【請求項4】
前記コンピュータを、
規定数の前記特定オブジェクトが前記仮想空間に配置されている場合に、追加の前記特定オブジェクトを前記仮想空間に配置することを規制する配置規制手段として、さらに機能させる、請求項1~請求項3のうち何れか一項に記載のプログラム。
【請求項5】
前記コンピュータを、
前記仮想空間に配置された前記特定オブジェクトを、当該特定オブジェクトが前記仮想空間に配置されてからの時間が規定時間に達した場合に前記仮想空間から撤去する撤去手段として、さらに機能させる、請求項4に記載のプログラム。
【請求項6】
前記コンピュータを、
前記第1状態から前記第2状態に変更されたキャラクタに対応するユーザに対して表示する画像であって、かつ前記仮想空間をレンダリングした画像を生成するときの視点を第1視点から第2視点に変更させる視点変更手段として、さらに機能させ、
前記仮想空間は、当該仮想空間に配置されたキャラクタが移動できるフィールドを含み、
前記第1視点は、前記仮想空間に配置されたキャラクタに対応する視点であり、
前記第2視点は、前記フィールドを俯瞰する視点である、請求項1~請求項5のうち何れか一項に記載のプログラム。
【請求項7】
前記第1状態は、前記仮想空間に配置されたキャラクタを移動させることを含む第1ゲームに参加できる状態であり、
前記第2状態は、前記第1ゲームに参加できない状態であって、前記1以上の特定オブジェクトを前記仮想空間に配置することを含む第2ゲームに参加できる状態であり、
前記コンピュータを、
前記第1状態から前記第2状態に変更されたキャラクタに対応するユーザに対して、前記第2ゲームの開始報知を行わせる開始報知手段として、さらに機能させる、請求項6に記載のプログラム。
【請求項8】
前記コンピュータを、
前記特定オブジェクトの配置を行ったユーザの属性を示す情報を報知させる情報報知手段として、さらに機能させる請求項1~請求項7のうち何れか一項に記載のプログラム。
【請求項9】
前記仮想空間に配置されるキャラクタが分類されるグループには、第1属性のユーザに対応するキャラクタが分類される第1グループと、第2属性のユーザに対応するキャラクタが分類される第2グループと、があり、
前記特定オブジェクトは、前記ユーザの属性に応じて異なる視覚効果を伴う、請求項8に記載のプログラム。
【請求項10】
コンピュータを、
ユーザに対応するキャラクタを仮想空間に配置するキャラクタ配置手段と、
特定の条件が成立した場合に、前記キャラクタの状態を第1状態から第2状態に変更する状態変更手段と、
前記キャラクタの状態が前記第1状態である場合に、前記ユーザによる操作情報に応じて、前記仮想空間に第1事象を発生させる第1事象発生手段と、
前記キャラクタの状態が前記第2状態である場合に、前記ユーザによる前記操作情報に応じて、前記仮想空間に前記第1事象と異なる第2事象を発生させる第2事象発生手段と、として機能させ、
前記仮想空間は、第1ユーザ、第2ユーザ、及び第3ユーザによって共有され、
前記第1ユーザと前記第3ユーザとは、同じ第1属性であり、前記第2ユーザは、第2属性であり、
前記キャラクタ配置手段は、前記第1ユーザに対応するキャラクタ、前記第2ユーザに対応するキャラクタ、及び前記第3ユーザに対応するキャラクタを前記仮想空間に配置し、
前記第1ユーザに対応するキャラクタの状態が前記第1状態であり、前記第2ユーザに対応するキャラクタの状態が前記第1状態であり、かつ前記第3ユーザに対応するキャラクタの状態が前記第2状態である場合に、前記第3ユーザによる前記操作情報に応じて前記第2事象が前記仮想空間に発生されたときには、前記第3ユーザによる前記操作情報に応じて発生された前記第2事象であって、かつ共通の前記第2事象が、前記仮想空間を共有する前記第1ユーザ及び前記第2ユーザの
双方から共通して視認可能に表示され
、
前記第2事象には、前記第1属性を有する前記第1ユーザ、及び前記第2属性を有する前記第2ユーザのうち、一方のユーザに対して効果を発揮するが他方のユーザに対して効果を発揮しないように構成される事象を含み、当該事象は、前記第1属性を有する前記第1ユーザ、及び前記第2属性を有する前記第2ユーザの双方から共通して視認可能に表示される、プログラム。
【請求項11】
ユーザに対応するキャラクタを仮想空間に配置するキャラクタ配置手段と、
特定の条件が成立した場合に、前記キャラクタの状態を第1状態から第2状態に変更する状態変更手段と、
前記ユーザによる第1操作情報に応じて、前記仮想空間で前記キャラクタを移動させる移動手段と、
前記キャラクタの状態が前記第2状態である場合に、前記仮想空間における、前記キャラクタの移動を規制する規制手段と、
前記キャラクタの状態が前記第2状態である場合に、前記ユーザによる第2操作情報に応じて、1以上の特定オブジェクトを前記仮想空間に配置する特定オブジェクト配置手段と、を備え、
前記仮想空間は、第1ユーザ、第2ユーザ、及び第3ユーザによって共有され、
前記第1ユーザと前記第3ユーザとは、同じ第1属性であり、前記第2ユーザは、第2属性であり、
前記キャラクタ配置手段は、前記第1ユーザに対応するキャラクタ、前記第2ユーザに対応するキャラクタ、及び前記第3ユーザに対応するキャラクタを前記仮想空間に配置し、
前記第1ユーザに対応するキャラクタの状態が前記第1状態であり、前記第2ユーザに対応するキャラクタの状態が前記第1状態であり、かつ前記第3ユーザに対応するキャラクタの状態が前記第2状態である場合に、前記第3ユーザによる前記第2操作情報に応じて前記特定オブジェクトが前記仮想空間に配置されたときには、前記第3ユーザによる前記第2操作情報に応じて配置された前記特定オブジェクトであって、かつ共通の前記特定オブジェクトが、前記仮想空間を共有する前記第1ユーザ及び前記第2ユーザの
双方から共通して視認可能に表示され
、
前記特定オブジェクトには、前記第1属性を有する前記第1ユーザ、及び前記第2属性を有する前記第2ユーザのうち、一方のユーザに対して効果を発揮するが他方のユーザに対して効果を発揮しないように構成されるオブジェクトを含み、当該オブジェクトは、前記第1属性を有する前記第1ユーザ、及び前記第2属性を有する前記第2ユーザの双方から共通して視認可能に表示される、情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、プログラム、及び情報処理システムに関する。
【背景技術】
【0002】
非特許文献1は、第1領域を移動しながら敵方キャラクタを攻撃することによって、敵方キャラクタを全滅させることを目的としたゲームを開示する。このゲームにおいて、ユーザは、自分のキャラクタが死亡した場合に、第2領域を移動しながら敵方キャラクタを攻撃できる。
【先行技術文献】
【非特許文献】
【0003】
【文献】“ボンバーマン4 TASさんとCPUが対戦するとこうなる”、[online]、平成29年2月17日、おやつ、[令和3年1月10日検索]、インターネット<https://www.youtube.com/watch?v=2yNTNGZN3T8>
【発明の概要】
【発明が解決しようとする課題】
【0004】
非特許文献1で開示されるゲームは、キャラクタの状態が変化する前(一例として、キャラクタが死亡状態になる前)も、キャラクタの状態が変化した後(一例として、キャラクタが死亡状態になった後)も、敵方キャラクタを攻撃するゲーム性を有する。つまり、ゲーム性は、キャラクタの状態が変化する前と、キャラクタの状態が変化した後とで変化しない。このため、ユーザの楽しみを増大させる余地がある。
【課題を解決するための手段】
【0005】
本開示の一態様に係るプログラムは、コンピュータを、ユーザに対応するキャラクタを仮想空間に配置するキャラクタ配置手段と、特定の条件が成立した場合に、前記キャラクタの状態を第1状態から第2状態に変更する状態変更手段と、前記ユーザによる第1操作情報に応じて、前記仮想空間で前記キャラクタを移動させる移動手段と、前記キャラクタの状態が前記第2状態である場合に、前記仮想空間における、前記キャラクタの移動を規制する規制手段と、前記キャラクタの状態が前記第2状態である場合に、前記ユーザによる第2操作情報に応じて、1以上の特定オブジェクトを前記仮想空間に配置する特定オブジェクト配置手段と、として機能させる。
【発明の効果】
【0006】
本開示によれば、ユーザの楽しみを増大させることができる。
【図面の簡単な説明】
【0007】
【
図1】第1実施形態における、ゲームシステムの概要を示す図。
【
図2】
図1のゲームシステムが含む端末のモジュール構成の一例を示す図。
【
図3】
図1のゲームシステムが含むサーバのモジュール構成の一例を示す図。
【
図4】
図2の端末における、画面遷移の一例を示す図。
【
図5】第1実施形態における、ゲームの第2パートを実行するための処理の流れの一例を示す図。
【
図6】第1実施形態における、アバターの行動を管理するための処理の流れの一例を示す図。
【
図7】第1実施形態における、アバターの状態を変更するための処理の流れの一例を示す図。
【
図8】第1実施形態における、アシストオブジェクトを配置するための処理の流れの一例を示す図。
【
図9】第1実施形態における、アシストオブジェクトを仮想空間から取り除くための処理の流れの一例を示す図。
【
図10】第1実施形態における、第2系統のアシストオブジェクトの効果を発揮させるための処理の流れの一例を示す図。
【
図11】第1実施形態における、仮想空間の一例を示す図。
【
図12】第1実施形態における、アシストオブジェクトの一例を示す図。
【
図13】
図2の端末における、ホーム画面の一例を示す図。
【
図14】
図2の端末における、マッチング画面の一例を示す図。
【
図15】
図2の端末における、バトル画面の一例を示す図。
【
図16】
図2の端末における、バトル画面の一例を示す図。
【
図17】
図2の端末における、アシスト移行画面の一例を示す図。
【
図18】
図2の端末における、アシスト画面の一例を示す図。
【
図19】
図2の端末における、アシスト画面の一例を示す図。
【
図20】
図2の端末における、バトル画面の一例を示す図。
【
図21】第2実施形態における、アシストオブジェクトの組合せに応じた効果の一例を示す図。
【
図22】変更例における、アシスト画面の一例を示す図。
【
図23】変更例における、アシスト画面の一例を示す図。
【発明を実施するための形態】
【0008】
本開示に係るゲームシステムについて図面を参照しつつ説明する。
(第1実施形態)
[ゲームシステムの概要]
図1に示すように、ゲームシステム10は、ネットワーク90と、複数の端末100と、1以上のサーバ200と、を含む。ゲームシステム10は、家庭用のシステムとして、又は業務用のシステムとして提供される。複数の端末100は、ネットワーク90を介してサーバ200と通信するように構成される。一例として、ゲームシステム10は、マルチユーザゲームを提供する。以下の説明において、単に「ゲーム」と示す場合、ゲームシステム10が提供するゲームを意味する。複数の端末100は、コンピュータの一例である。1以上のサーバ200は、コンピュータの一例である。
【0009】
[ネットワーク]
一例として、ネットワーク90は、インターネット、及び無線基地局を含む移動通信システムで構成される。一例として、移動通信システムは、3G、4G、5G移動通信システム、LTE(Long Term Evolution)、又は、アクセスポイントによってインターネットに接続可能な無線ネットワークとして実現できる。
【0010】
[端末のハードウェア構成]
複数の端末100は、ゲームを行うゲーム端末として使用され得る。ゲーム端末として使用される端末100は、ゲームシステム10が提供するゲームをプレイするゲーム機能をユーザに提供する。以下の説明では、ユーザA~Cが使用する端末をそれぞれ端末100A~100Cと示す場合がある。ユーザA~Cは、ゲームのプレイヤである。
【0011】
一例として、端末100は、スマートフォンである。端末100は、フィーチャーフォン、PDA(Personal Digital Assistant)、又はタブレット型コンピュータといった、携帯端末装置であってもよい。端末100は、パーソナルコンピュータ(PC)、又はワークステーションといった、固定端末装置であってもよい。例えば、端末100は、プロセッサ110と、メモリ120と、ストレージ130と、を備える。端末100は、さらに、通信インターフェース(IF)140と、入出力IF150と、を備えてもよい。端末100は、さらに、マイク160と、スピーカ162と、タッチスクリーン164と、を備えてもよい。端末100が備える複数の構成要素の各々は、通信バス180に接続される。
【0012】
プロセッサ110は、端末100に与えられる信号に応じて、又は予め定められた条件が成立したことに応じて、メモリ120又はストレージ130に記憶されているプログラムに含まれる一連の命令を実行する。例えば、プロセッサ110は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field-Programmable Gate Array)、又は、その他の演算装置として実現される。
【0013】
メモリ120は、プログラム、及びデータを一時的に保存する。一例として、プログラムは、ストレージ130から読み出される。データは、端末100に送信されたデータと、プロセッサ110によって生成されたデータと、を含み得る。例えば、メモリ120は、RAM(Random Access Memory)、又はその他の揮発性メモリとして実現される。
【0014】
ストレージ130は、プログラム、及びデータを永続的に保持する。例えば、ストレージ130は、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、又はその他の不揮発性記憶装置として実現される。ストレージ130は、メモリカードのように、着脱可能な記憶装置として実現されてもよい。
【0015】
ストレージ130に格納されるプログラムは、ゲームプログラム、及び通信プログラムを含む。プログラムは、配信プログラム、及び視聴プログラムを含んでもよい。ゲームプログラムは、仮想空間の提供と、仮想空間におけるゲームプレイを提供するゲーム機能を実現する。一例として、ゲームプレイは、仮想空間に配置されるオブジェクトを操作することを含む。一例として、端末100を使用して操作されるオブジェクトは、端末100を使用するユーザに対応するプレイヤキャラクタである。プレイヤキャラクタは、端末100を使用するユーザのアバターである。ゲームプログラムは、他のユーザのゲームプレイに参加する参加機能を実現してもよい。
【0016】
通信プログラムは、他のコンピュータ(例えば、サーバ200)と通信する機能を実現する。配信プログラムは、仮想空間におけるゲームプレイを少なくとも含むコンテンツを配信する配信機能を実現する。視聴プログラムは、配信されたコンテンツの視聴を提供する視聴機能を実現する。ストレージ130に格納されるプログラムは、オペレーティングシステム、シミュレーションプログラム、ユーザ認証プログラム、及びその他のプログラムを含んでよい。
【0017】
例えば、ストレージ130に格納されるデータは、仮想空間の定義データ、及び仮想空間に配置される各種オブジェクト用のオブジェクトデータを含む。端末100A~100Cは、1つの仮想空間を共有し得る。仮想空間は、3次元で表現される空間に限らない。例えば、仮想空間は、2次元によって表現される空間や、静止画によって表現され音や声、文字データなどの入力データによって表現される空間でもよい。
【0018】
通信IF140は、ネットワーク90に接続される。通信IF140は、ネットワーク90に接続されている他のコンピュータ(例えば、サーバ200)と通信する。例えば、通信IF140は、LAN(Local Area Network)、又はその他の有線通信IFとして実現される。例えば、通信IF140は、Wi-Fi(登録商標)、Bluetooth(登録商標)、NFC(Near Field Communication)、又はその他の無線通信IFとして実現される。通信IF140は、上述のものに限られない。
【0019】
入出力IF150は、外部の入出力機器190と通信する。例えば、入出力IF150は、USB(Universal Serial Bus)、DVI(Digital Visual Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)、又はその他の有線通信IFとして実現される。例えば、入出力IF150は、Bluetooth(登録商標)、又はその他の無線通信IFとして実現される。
【0020】
一例として、入出力機器190は、コントローラである。例えば、入出力IF150は、プロセッサ110から出力された命令を、コントローラに送信する。この命令は、振動、音声出力、又は発光をコントローラに指示する。コントローラは、命令を受信すると、この命令に応じて、振動、音声出力、又は発光を実行する。コントローラは、1以上の操作パーツを有する。例えば、1以上の操作パーツは、ボタン、キー、スイッチ、ハンドル、バー、タッチパッド、又はスティックを含む。コントローラは、操作パーツに対するユーザの操作に基づく出力値を端末100へ送信する。一例として、コントローラは、加速度センサ、又は角速度センサといったモーションセンサを備えてもよい。コントローラは、モーションセンサの出力値を端末100へ送信するように構成されてもよい。コントローラは、端末100に対して取付け、及び取外しできてもよい。
【0021】
入出力機器190は、上述のものに限られない。例えば、入出力機器190は、カメラであってもよい。カメラは、ユーザを撮影した撮影画像を端末100へ送信するように構成されてもよい。例えば、入出力機器190は、測距センサであってもよい。測距センサは、ユーザの手、又はマーカー等の検知に基づく出力値を端末100へ送信するように構成されてもよい。
【0022】
マイク160は、ユーザの発話を音声信号(電気信号)に変換してプロセッサ110へ送信する。スピーカ162は、音声信号を音声に変換してユーザへ出力する。各端末100は、スピーカ162に加えて、又は代えて、イヤホン、又はイヤホンを接続できるイヤホンジャックを備えてもよい。
【0023】
タッチスクリーン164は、モニタ166と、タッチセンサ167と、を含む。モニタ166は、透過型又は非透過型の表示装置として実現される。例えば、モニタ166は、液晶モニタ、有機EL(Electro Luminescence)モニタ、又はその他の表示装置として実現される。モニタ166は、各種の画像を表示する。モニタ166に表示する画像は、背景、アバター、その他のキャラクタ、障害物、ウィンドウ、ボタン、メニュー、リスト、及びアイコンといった各種のオブジェクトを含む。モニタ166は、上述のものに限られない。例えば、モニタ166は、左目用の画像を表示するサブモニタと、右目用の画像を表示するサブモニタと、を含む3Dモニタであってもよい。
【0024】
タッチセンサ167は、モニタ166に対するユーザの操作に基づく出力値をプロセッサ110へ送信する。一例として、タッチセンサ167は、静電容量式タッチセンサ、抵抗膜式タッチセンサ(感圧式タッチセンサ)、超音波式タッチセンサ、又はその他のタッチセンサとして実現される。一例として、タッチセンサ167の入力面は、モニタ166の表示面の一部又は全部である。タッチセンサ167は、ユーザの入力操作を受け付けるように構成された操作部として使用され得る。例えば、操作部がタッチセンサ167である場合、プロセッサ110は、タッチセンサ167の入力面に対するユーザの物理的な接触操作をユーザの入力操作として受け付ける。例えば、タッチセンサ167に対するユーザの入力操作は、タッチ操作、スライド操作、スワイプ操作、タップ操作、ドラッグ操作、及びその他の態様による操作を含み得る。
【0025】
操作部は、上述した構成に限られない。例えば、操作部が通信IF140である場合、プロセッサ110は、ネットワーク90を介して接続された操作機器(不図示)から送信される信号を、ユーザの入力操作として受け付ける。例えば、操作部が入出力IF150である場合、プロセッサ110は、外部の入出力機器190から送信される信号を、ユーザの入力操作として受け付ける。例えば、入出力機器190がカメラ及び測距センサである場合、プロセッサ110は、受信した撮影画像からユーザの手が検出されると、撮影画像及び出力値に基づき検出されるジェスチャ(ユーザの手の一連の動き)をユーザの入力操作として受け付ける。例えば、入出力機器190がコントローラである場合、プロセッサ110は、コントローラから送信される出力値をユーザの入力操作として受け付ける。
【0026】
[サーバのハードウェア構成]
サーバ200は、ワークステーション、又はPC等の汎用コンピュータであってもよい。サーバ200は、プロセッサ210と、メモリ220と、ストレージ230と、通信IF240と、入出力IF250と、を備える。サーバ200が備える複数の構成要素の各々は、通信バス280に接続される。
【0027】
プロセッサ210は、サーバ200に与えられる信号に応じて、又は予め定められた条件が成立したことに応じて、メモリ220又はストレージ230に格納されているプログラムに含まれる一連の命令を実行する。例えば、プロセッサ210は、CPU、GPU、MPU、FPGA、又はその他の演算装置として実現される。
【0028】
メモリ220は、プログラム、及びデータを一時的に保存する。一例として、プログラムは、ストレージ230から読み出される。データは、サーバ200に送信されたデータと、プロセッサ210によって生成されたデータと、を含み得る。例えば、メモリ220は、RAM、又はその他の揮発性メモリとして実現される。
【0029】
ストレージ230は、プログラム、及びデータを永続的に保持する。例えば、ストレージ130は、ROM、ハードディスク装置、フラッシュメモリ、又はその他の不揮発性記憶装置として実現される。ストレージ230は、メモリカードのように、着脱可能な記憶装置として実現されてもよい。サーバ200は、ストレージ230に代えて、外部の記憶装置に格納されているプログラムを使用してもよい。例えば、アミューズメント施設のように、複数のゲームシステム10が使用される場面において、プログラム及びデータの更新を一括して行なうことができる。
【0030】
ストレージ230に格納されるプログラムは、ゲームプログラム、及び通信プログラムを含む。ゲームプログラムは、ゲームシステム10における仮想空間の提供と、仮想空間を複数のユーザで共有したゲームプレイを提供する機能を実現する。通信プログラムは、他のコンピュータ(例えば、端末100A~100C)と通信する機能を実現する。プログラムは、配信プログラムを含んでもよい。配信プログラムは、コンテンツを端末100へ配信する機能を実現する。ストレージ230に格納されるプログラムは、オペレーティングシステム、シミュレーションプログラム、ユーザ認証プログラム、及びその他のプログラムを含んでよい。例えば、ストレージ130に格納されるデータは、仮想空間を規定するデータ、及び仮想空間に配置される各種オブジェクト用のオブジェクトデータを含み得る。
【0031】
通信IF240は、ネットワーク90に接続される。通信IF240は、ネットワーク90に接続されている他のコンピュータ(例えば、端末100A~100C)と通信する。例えば、通信IF240は、LAN、又はその他の有線通信IFとして実現される。例えば、通信IF240は、Wi-Fi(登録商標)、Bluetooth(登録商標)、NFC、又はその他の無線通信IFとして実現される。通信IF240は、上述のものに限られない。
【0032】
入出力IF250は、外部の入出力機器と通信する。例えば、入出力IF250は、USB、DVI、HDMI、又はその他の有線通信IFとして実現される。例えば、入出力IF250は、Bluetooth(登録商標)、又はその他の無線通信IFとして実現される。
【0033】
サーバ200は、上述した構成に限らない。例えば、サーバ200は、仮想空間を提供するためのゲームサーバ200Aと、コンテンツの配信を行う配信サーバ200Bと、を含んでよい。ゲームプログラムは、ゲームサーバ200Aのストレージ230に格納される。ゲームプログラムは、ゲームサーバ200Aのプロセッサ210によって実行される。配信プログラムは、配信サーバ200Bのストレージ230に格納される。配信プログラムは、配信サーバ200Bのプロセッサ210によって実行される。ゲームサーバ200Aは、通信IF240を介して、配信サーバ200Bとの間で、各種の情報、及び各種の要求を送受信する。ゲームサーバ200Aは、通信IF240を介して、端末100A~100Cとの間で、各種の情報、及び各種の要求の送受信を行う。配信サーバ200Bは、通信IF240を介して、端末100との間で、各種の情報、及び各種の要求の送受信を行う。
【0034】
[端末のモジュール構成]
図2に示すように、端末100は、コントロールモジュール101と、レンダリングモジュール104と、メモリモジュール105と、通信モジュール106と、入出力モジュール107と、を備える。コントロールモジュール101は、ゲームモジュール101Aを備える。コントロールモジュール101は、配信モジュール101Bと、視聴モジュール101Cと、を備えてもよい。
【0035】
一例として、ゲームモジュール101A、及びレンダリングモジュール104は、プロセッサ110によって実現される。配信モジュール101B、及び視聴モジュール101Cは、プロセッサ110によって実現される。メモリモジュール105は、メモリ120、及びストレージ130によって実現される。通信モジュール106は、通信IF140によって実現される。入出力モジュール107は、プロセッサ110、タッチセンサ167、及び入出力IF150によって実現される。
【0036】
入出力モジュール107は、タッチセンサ167に対するユーザの入力操作、及び、入出力IF150を介した外部の操作機器に対するユーザの入力操作を検知し、受け付ける。一例として、入出力モジュール107は、タッチセンサ167に対するユーザの入力操作を受け付けた場合、入力位置の座標を検出することによって、入力操作の種類を特定する。例えば、入出力モジュール107が特定できる入力操作の種類は、タッチ操作、スライド操作、スワイプ操作、タップ操作、ドラッグ操作、及びその他の態様による操作を含み得る。入出力モジュール107は、連続して検知されていた入力操作が途切れると、タッチセンサ167から接触入力が解除されたことを検知する。
【0037】
通信モジュール106は、1以上のサーバ200から、各種のデータ、及び各種の要求を受信する。一例として、通信モジュール106がサーバ200から受信するデータは、進行情報、及びユーザ情報を含み得る。進行情報は、第1進行情報と、第2進行情報と、を含み得る。第1進行情報は、仮想空間に配置する1以上のアバターの種類、アバターの座標情報、アバターのアクション情報、及びその他の情報を含み得る。アバターは、仮想空間においてユーザが操作する対象オブジェクトであって、ユーザの分身となるキャラクタである。一例として、アバターの座標情報は、仮想空間における位置を示す情報である。一例として、アクション情報は、アバターのアクションに関する情報である。一例として、アバターのアクションは、アバターの姿勢、アイテムの使用、スキルの使用、攻撃、防御、回避、又はジャンプなどを含み得る。第1進行情報は、アバターの設定に関する設定情報を含み得る。一例として、アバターの設定は、仮想空間において、又は仮想空間へ移動する前段階において、ユーザが変更し得る。一例として、アバターの設定は、アバターの装備又は容姿などを含み得る。一例として、ユーザ情報は、ユーザ名、アカウントID、性別、年齢、及び住所等を含み得る。
【0038】
第2進行情報は、仮想空間に配置する1以上のアシストオブジェクトの種類情報、アシストオブジェクトの座標情報、及びその他の情報を含み得る。アシストオブジェクトは、特定オブジェクトの一例である。一例として、アシストオブジェクトは、仮想空間に配置されたアバターに影響を与え得る。アシストオブジェクトは、第1系統のアシストオブジェクトと、第2系統のアシストオブジェクトと、に分類される。第1系統のアシストオブジェクトは、仮想空間に配置されると効果を発揮する。第1系統のアシストオブジェクトは、仮想空間に配置されてから取り除かれるまでの期間にわたって効果を発揮する。第1系統のアシストオブジェクトは、仮想空間に配置されてから撤去時間T1が経過すると、撤去条件が満たされ、それにより仮想空間から取り除かれる。
【0039】
第2系統のアシストオブジェクトは、仮想空間に配置されただけでは効果を発揮しない。第2系統のアシストオブジェクトは、予め定められた有効化条件が満たされると、効果を発揮する。第2系統のアシストオブジェクトは、仮想空間に配置されてから撤去時間T1が経過した場合に、撤去条件が満たされ、それにより仮想空間から取り除かれる。第2系統のアシストオブジェクトは、撤去時間T1が経過する前に効果が発揮された場合に撤去条件が満たされ、それにより仮想空間から取り除かれる場合がある。一例として、アシストオブジェクトは、アバターを補助する効果を発揮できるオブジェクトを含み得る。一例として、アシストオブジェクトは、アバターを妨害する効果を発揮できるオブジェクトを含み得る。
【0040】
通信モジュール106は、1以上のサーバ200に対して、各種のデータ、及び各種の要求を送信する。一例として、通信モジュール106がサーバ200へ送信するデータは、プレイ情報、及びユーザ情報を含み得る。プレイ情報は、入出力モジュール107が受け付けた入力操作に応じて出力される。プレイ情報は、第1プレイ情報と、第2プレイ情報と、を含み得る。
【0041】
一例として、第1プレイ情報は、アバターの操作内容として、アバターの座標情報、アクション情報、及びその他の情報を含み得る。一例として、第1プレイ情報は、アバターの設定情報を含み得る。一例として、第2プレイ情報は、アシストオブジェクトの操作内容として、アシストオブジェクトの種類情報、及び座標情報を含み得る。一例として、第1プレイ情報、及び第2プレイ情報は、ゲームモジュール101Aによって生成される。
【0042】
ゲームモジュール101Aは、ゲームを進行させるための処理を行う。ゲームモジュール101Aは、メモリモジュール105から仮想空間の定義データを読み出す。ゲームモジュール101Aは、読み出した定義データに応じて仮想空間を定義する。ゲームモジュール101Aは、オブジェクトデータをメモリモジュール105から読み出す。ゲームモジュール101Aは、読み出したオブジェクトデータに応じて、仮想空間にオブジェクトを配置する。ゲームモジュール101Aは、入出力モジュール107が受け付けた入力位置の座標と、入力操作の種類と、ゲームの進行状況と、に応じて、ユーザの指示を特定する。
【0043】
ゲームの進行状況は、仮想空間における自分のアバターの座標情報、及びアクション情報を含み得る。ゲームの進行状況は、仮想空間における他ユーザのアバターの座標情報、及びアクション情報を含み得る。ゲームの進行状況は、自分のアバターの設定情報を含み得る。ゲームの進行状況は、他ユーザのアバターの設定情報を含み得る。ゲームの進行状況は、仮想空間におけるアシストオブジェクトの種類情報、及び座標情報を含み得る。
【0044】
ゲームモジュール101Aは、ゲームの進行に関する各種の判定を行う。ゲームモジュール101Aは、ゲームの進行に関する各種の抽選を行う。ゲームモジュール101Aは、ユーザの指示、各種の判定結果、及び各種の抽選結果に応じて、各種の要求、及びプレイ情報を生成する。ゲームモジュール101Aが生成した各種の要求、及びプレイ情報は、通信モジュール106によってサーバ200へ送信される。
【0045】
配信モジュール101Bは、ゲームプレイを含むコンテンツを配信するための処理を行う。配信モジュール101Bは、入出力モジュール107が受け付けた入力位置の座標と、入力操作の種類と、ゲームの進行状況と、に応じて、ユーザの指示を特定する。配信モジュール101Bは、ユーザの指示内容に応じて、コンテンツの配信開始要求、及び配信終了要求を生成し得る。配信モジュール101Bは、ユーザの指示に応じて、コンテンツの配信内容を変更する要求を生成し得る。配信モジュール101Bが生成した各種の要求は、通信モジュール106によって送信される。
【0046】
視聴モジュール101Cは、配信ユーザが配信するコンテンツを視聴するための処理を行う。視聴モジュール101Cは、メモリモジュール105から視聴空間の定義データを読み出す。視聴モジュール101Cは、読み出した定義データに応じて、視聴空間を定義する。視聴モジュール101Cは、オブジェクトデータをメモリモジュール105から読み出す。視聴モジュール101Cは、読み出したオブジェクトデータに応じて、視聴空間にオブジェクトを配置する。視聴モジュール101Cは、入出力モジュール107が受け付けた入力位置の座標と、入力操作の種類と、ゲームの進行状況と、に応じて、ユーザの指示を特定する。視聴モジュール101Cは、ユーザの指示に応じて、コンテンツの視聴開始要求、及び視聴終了要求を生成する。視聴モジュール101Cは、ユーザの指示に応じて、コンテンツの配信内容を変更する要求を生成する。視聴モジュール101Cが生成した各種の要求は、通信モジュール106によって送信される。
【0047】
レンダリングモジュール104は、ゲーム画面の画像を作成する。レンダリングモジュール104は、通信モジュール106が受信した進行情報、及び各種の要求に応じてゲーム画面の画像を作成する。レンダリングモジュール104は、ゲームモジュール101Aが生成したプレイ情報、及び各種の要求に応じてゲーム画面の画像を作成する。レンダリングモジュール104は、視聴モジュール101Cが生成した情報、及び各種の要求に応じてゲーム画面の画像を作成する。
【0048】
レンダリングモジュール104は、作成したゲーム画面の画像をモニタ166に表示する。レンダリングモジュール104は、入出力IF150を介して、外部の表示装置にゲーム画面の画像を表示するように構成されてもよい。レンダリングモジュール104は、通信IF140を介して、外部の表示装置にゲーム画面の画像を表示するように構成されてもよい。ゲーム画面は、2D、又は3Dのオブジェクトを制御、及び描画した画像である。上述したように、ゲーム画面に描画されるオブジェクトは、アバター(キャラクタ)、アシストオブジェクト、背景、及び障害物等を含み得る。
【0049】
レンダリングモジュール104は、UI(User Interface)を構築するための2D、又は3Dのゲームオブジェクト(UIオブジェクト)を制御、及び描画してもよい。レンダリングモジュール104は、アイコン、ボタン、リスト、ウィンドウ、及びメニューといった、ユーザの入力操作に必要なUIオブジェクトを含むゲーム画面を作成する。UIオブジェクトは、ゲームを進行するために必要なユーザの入力操作を補助する情報である。また、UIオブジェクトは、ゲームの進行中に生成されるデータを端末100から得るために必要なユーザの入力操作を補助する情報である。本開示で示す各種のUIオブジェクトは、何れも1つの例に過ぎず、それらの態様に限らない。
【0050】
端末100における処理は、ハードウェアと、プロセッサ110により実行されるソフトウェアと、によって実現される。このようなソフトウェアは、ハードディスク等のメモリモジュール105に予め格納されていてもよい。ソフトウェアは、CD-ROM等のように、コンピュータが読み取りできる不揮発性のデータ記録媒体に格納されて、プログラム製品として流通してもよい。このソフトウェアは、インターネット等のネットワークに接続されている情報提供事業者によって、ダウンロードできるプログラム製品として提供されてもよい。このようなソフトウェアは、光ディスク駆動装置等のデータ読取装置によってデータ記録媒体から読み取られて、又は、通信モジュール106を介してサーバ200といった他のコンピュータからダウンロードされた後、メモリモジュールに一旦格納される。そのソフトウェアは、プロセッサ110によってメモリモジュールから読み出され、実行可能なプログラムの形式でRAM等に格納される。プロセッサ110は、そのプログラムを実行する。
【0051】
[サーバのモジュール構成]
図3に示すように、サーバ200は、コントロールモジュール201と、メモリモジュール205と、通信モジュール206と、入出力モジュール207と、を備える。コントロールモジュール201は、ゲームモジュール201Aを備える。コントロールモジュール201は、配信モジュール201Bを備えてもよい。ゲームモジュール201Aは、プロセッサ210によって実現される。配信モジュール201Bは、プロセッサ210によって実現される。メモリモジュール205は、メモリ220、及びストレージ230によって実現される。通信モジュール206は、通信IF240によって実現される。入出力モジュール207は、プロセッサ210、及び入出力IF250によって実現される。
【0052】
通信モジュール206は、各端末100から、各種の情報、及び各種の要求を受信する。一例として、通信モジュール206が各端末100から受信する情報は、各プレイ情報、及びユーザ情報を含み得る。通信モジュール206は、各端末100に対して、各種の情報、及び各種の要求を送信する。一例として、通信モジュール206が各端末100へ送信する情報は、各進行情報、及びユーザ情報を含み得る。入出力モジュール107は、入出力IF250を介した外部の操作機器に対するユーザの入力操作を検知し、受け付ける。
【0053】
ゲームモジュール201Aは、複数のユーザによって、仮想空間を共有する環境を提供するための処理を行う。ゲームモジュール201Aは、メモリモジュール205から、仮想空間の定義データを読み出す。ゲームモジュール201Aは、読み出した定義データに応じて、仮想空間を定義する。ゲームモジュール201Aは、オブジェクトデータをメモリモジュール205から読み出す。ゲームモジュール201Aは、読み出したオブジェクトデータに応じて、アバターを除く各種のオブジェクトを仮想空間に配置する。
【0054】
ゲームモジュール201Aは、複数の端末100から通信モジュール206が受信した第1プレイ情報に含まれる座標情報に応じて、複数のユーザの各々に対応するアバターを配置する。ゲームモジュール201Aは、複数の端末100から通信モジュール206が受信した第1プレイ情報に含まれるアクション情報、及びアバターの設定情報に応じて、アバター同士の相互作用を判定する。ゲームモジュール201Aは、1以上の端末100から通信モジュール206が受信した第2プレイ情報に含まれる種類情報及び座標情報に応じて、アシストオブジェクトを配置する。ゲームモジュール201Aは、これらの処理の結果に応じて、各進行情報を生成する。通信モジュール206は、各進行情報を各端末100へ送信する。
【0055】
配信モジュール201Bがある場合、ゲームモジュール201Aは、各進行情報を配信モジュール201Bへ送信してもよい。一例として、配信モジュール201Bは、ゲームモジュール201Aが生成した各進行情報に応じて、配信情報を生成する。通信モジュール206は、配信情報を1以上の端末100へ送信する。配信情報は、各進行情報を含み得る。一例として、配信情報は、各進行情報そのものであってもよい。配信モジュール201Bは、通信モジュール206が端末100から受信した各種の要求に応じて、各種の要求をゲームモジュール201Aへ送信する。配信モジュール201Bは、通信モジュール206が端末100から受信した各種の情報に応じて、各種の情報をゲームモジュール201Aへ送信する。
【0056】
サーバ200は、上述したモジュール構成に限らない。例えば、ゲームモジュール201Aは、ゲームサーバ200Aが備えてもよい。例えば、配信モジュール201Bは、配信サーバ200Bが備えてもよい。ゲームモジュール201Aは、通信モジュール206を介して、配信モジュール201Bとの間で、各種の情報、及び各種の要求の送受信を行う。
【0057】
サーバ200における処理は、ハードウェアと、プロセッサ210により実行されるソフトウェアと、によって実現される。このようなソフトウェアは、ハードディスク等のメモリモジュール205に予め格納されてもよい。ソフトウェアは、CD-ROM等のように、コンピュータが読み取りできる不揮発性のデータ記録媒体に格納されて、プログラム製品として流通してもよい。このソフトウェアは、インターネット等のネットワークに接続されている情報提供事業者によって、ダウンロードできるプログラム製品として提供されてもよい。このようなソフトウェアは、光ディスク駆動装置等のデータ読取装置によってデータ記録媒体から読み取られて、又は、通信モジュール206を介して外部記憶装置といった他のコンピュータからダウンロードされた後、メモリモジュールに一旦格納される。そのソフトウェアは、プロセッサ210によってメモリモジュールから読み出され、実行可能なプログラムの形式でRAM等のメモリに格納される。プロセッサ210は、そのプログラムを実行する。
【0058】
[ゲームの概要]
一例として、本開示に係るゲームは、性質が異なる複数のパートを含む。一例として、複数のパートは、第1パートと、第2パートと、を含む。第1パートにおいて、ユーザは、第2パートのための準備を行い得る。
【0059】
一例として、第2パートは、複数のユーザが何らかの基準に基づいて勝敗を決めるパートである。一例として、第2パートは、複数のパーティが何らかの基準に基づいて勝敗を決めるパートである。複数のパーティは、それぞれ複数のユーザを含み得る。複数のユーザが所属するものは、パーティであることに限らず、グループ、チーム、陣営、又は組などであってよい。一例として、ユーザは、1つのパーティに所属し得る。
【0060】
一例として、第2パートにおけるアバターの状態は、第1状態と、第2状態と、を含む。第2パートの開始時点において、アバターは、第1状態である。第2パートにおいて、アバターは、特定の条件が成立した場合に、第1状態から第2状態に変更される。一例として、第1状態は、仮想空間でアバターを移動させることを含む第1ゲームに参加できる状態である。一例として、第2状態は、1以上の特定オブジェクトを仮想空間に配置することを含む第2ゲームに参加できる状態である。一例として、第2状態は、第1ゲームに参加できない状態である。第2状態は、仮想空間でアバターを移動させることができない状態である。
【0061】
一例として、ゲームの第2パートは、以下のような仕様である。
第2パートは、複数のパーティが勝敗を争う対戦型のゲームである。第2パートのうち第1ゲームは、自分のアバターと敵方ユーザのアバターとでバトルを行うバトルゲームである。ユーザは、自分のアバターが第1状態である場合に、バトルゲームに参加できる。第2パートのうち第2ゲームは、アシストオブジェクトを配置するアシストゲームである。ユーザは、自分のアバターが第2状態になった場合に、アシストゲームに参加できる。
【0062】
一例として、特定の条件は、アバターのパラメータ値のうち、特定パラメータ値が特定値になることである。一例として、パラメータ値は、ヒットポイントである。一例として、特定値は、0である。第1状態は、ヒットポイントが0を超えている状態である。つまり、第1状態は、仮想空間でアバターが生存している状態である。第2状態は、ヒットポイントが0の状態である。つまり、第2状態は、仮想空間でアバターが死亡した状態である。
【0063】
これに限らず、特定の条件は、ヒットポイントとは別のパラメータが特定値になることであってもよい。特定の条件は、予め定めた条件を満たすことによって獲得できるポイントが特定値になることであってもよい。特定の条件は、予め定めた抽選に当選することであってもよい。また、第1状態及び第2状態は、何れも生存状態であってもよい。一例として、第1状態は、スタミナが切れておらず移動できる状態であってもよい。この場合に、第2状態は、スタミナが切れて移動できない状態であってもよい。一例として、第1状態は、アバターが移動できないペナルティが課せられていない状態であってもよい。この場合に、第2状態は、上記ペナルティが課せられている状態であってもよい。第1状態及び第2状態は、何れも死亡状態であってもよい。一例として、第1状態は、ゴーストのように移動できる状態であってもよい。この場合に、第2状態は、ゴーストのように移動できない状態であってもよい。
【0064】
第2パートにおいて、勝敗を決めるための基準は、1つのパーティが敵対する敵方パーティよりも先に、予め定めた勝利条件を満たすことである。勝利条件は、敵方ユーザのアバターが全て死亡し、全滅することを含む。つまり、勝利条件は、敵方ユーザのアバターの全てについて、特定の条件が成立したことを含む。
【0065】
バトルゲームにおいて、各ユーザは、自分のアバターを移動させたり、敵方ユーザのアバターを攻撃したりできる。自分のアバターのヒットポイントは、敵方ユーザのアバターによる攻撃が命中した場合に減少する。敵方ユーザのアバターのヒットポイントは、自分のアバターによる攻撃が命中した場合に減少する。
【0066】
アシストゲームにおいて、各ユーザは、仮想空間に1以上のアシストオブジェクトを配置できる。ユーザが仮想空間に配置できる1以上のアシストオブジェクトには、第1系統のアシストオブジェクトと、第2系統のアシストオブジェクトとが含まれる。第1系統のアシストオブジェクトは、仮想空間に配置されることで効果を発揮する。第2系統のアシストオブジェクトは、仮想空間に配置されてから、予め定めた有効化条件が満たされることで効果を発揮する。後述の通り、アシストオブジェクトは、味方ユーザのアバターを補助するためのオブジェクトと、敵方ユーザのアバターを妨害するためのオブジェクトと、を含む。
【0067】
第2パートは、敵方パーティのアバターが全滅していなくても、予め定めた制限時間が経過した場合に終了する。勝利条件は、第2パートの制限時間が経過する時点において、1つのパーティが、敵方パーティよりも多くのポイントを獲得していることを含む。第2パートは、仮想空間に配置された指定オブジェクトを回収することによって、ポイントを獲得できる。
【0068】
第2パートにおいて、1つのパーティに所属できるユーザの人数には、上限が定められている。一例として、1つのパーティの上限人数は、6人である。1つのパーティの上限人数は、2人~5人であってもよく、7人以上であってもよい。一例として、第2パートにおけるパーティは、別のパートにおいて構成された少人数グループやフレンド等の関係にあった者同士によって構成される少人数のグループを所属させることも可能である。ある2人グループと3人グループと個人ユーザを組み合わせて上限人数6人のパーティとして構成させてもよいし、個人ユーザ6人を所属させて第2パートにおけるパーティとしてもよい。第2パートにおけるパーティの募集では、個人ユーザを募集してもよいし、少人数グループを募集してもよい。
【0069】
第2パートは、上述した仕様に限らない。例えば、第2パートは、サッカー、テニス、卓球、ボクシング、又はバスケットボール等のスポーツであってよい。例えば、第2パートは、カーレース、ヨットレース、スキーレース、又は飛行レース等のレースであってよい。
【0070】
一例として、第1パートは、以下のような仕様である。
第1パートにおいて、ユーザは、第2パートが含むバトルゲームの準備を行う。バトルゲームの準備は、アバターの装備、アバターのスキル、及びアバターの所持アイテムの追加、交換、及び削除を含む。バトルゲームの準備は、アバターの容姿を変更することを含んでよい。例えば、アバターの容姿は、種族、性別、体形、髪型、又は表情を含む。バトルゲームの準備は、アバターの設定を変更することである。
【0071】
[端末における画面遷移の概要]
図4に示すように、一例として、各端末100における表示画面には、ホーム画面40、マッチング画面50、バトル画面60、アシスト移行画面65、アシスト画面70、及びリザルト画面75を含み得る。ここでは、画面遷移の概要について説明する。各表示画面の具体的な一例は後述する。
【0072】
ホーム画面40は、ゲームが第1パートである場合に表示される。マッチング画面50は、ゲームが第1パートから第2パートへ移行するときに表示される。バトル画面60は、第2パートのバトルゲームである場合に表示される。つまり、バトル画面60は、ゲームが第2パートであり、かつ端末100を使用するユーザのアバターが第1状態である場合に表示される。
【0073】
アシスト移行画面65は、第2パートにおいて、バトルゲームからアシストゲームへ移行する場合に表示される。つまり、アシスト移行画面65は、ゲームが第2パートであり、かつ端末100を使用するユーザのアバターが第1状態から第2状態に変更される場合に表示される。
【0074】
アシスト画面70は、第2パートのアシストゲームである場合に表示される。つまり、アシスト画面70は、ゲームが第2パートであり、かつ端末100を使用するユーザのアバターが第2状態である場合に表示される。リザルト画面75は、第2パートから第1パートへ移行するときに表示される。なお、リザルト画面75において、続けて第2パートのゲームを実行することを指示する操作がされた場合に、ホーム画面40を経由せずに、マッチング画面50が表示されてもよい。
【0075】
[ゲームの第2パートを実行するための処理の流れ]
以下、ゲームの第2パートを実行するための処理の流れの一例について説明する。
図5に示すように、ステップS100において、端末100のプロセッサ110は、ゲームが第1パートである場合に、レンダリングモジュール104として、ホーム画面40をモニタ166に表示する。ステップS102において、端末100のプロセッサ110は、ゲームモジュール101Aとして、第2パートの開始を指示する開始操作を受け付けた場合に、マッチング開始要求をサーバ200へ送信する。一例として、プロセッサ110は、端末100のユーザが所属するパーティに、複数のユーザが所属している場合に、開始操作を受け付ける。つまり、プロセッサ110は、端末100のユーザが所属するパーティに、複数のユーザが所属していない場合に、開始操作を受け付けない。一例として、プロセッサ110は、端末100のユーザが所属するパーティに、上限人数のユーザが所属している場合に、開始操作を受け付けてもよい。つまり、プロセッサ110は、端末100のユーザが所属するパーティに、上限人数のユーザが所属していない場合に、開始操作を受け付けない。マッチング開始要求を送信した場合に、プロセッサ110は、レンダリングモジュール104として、マッチング画面50をモニタ166に表示する。
【0076】
ステップS104において、サーバ200のプロセッサ210は、ゲームモジュール101Aとして、マッチング開始要求を受信する。ステップS106において、サーバ200のプロセッサ210は、マッチング処理を行う。マッチング処理において、プロセッサ210は、ゲームモジュール201Aとして、マッチング待ち状態である1以上のパーティの中から、端末100を使用するユーザが所属するパーティと対戦するための条件に適合するパーティを検索する。マッチング待ち状態は、マッチング開始要求を受信済みであって、かつ対戦相手となるパーティが決定されていない状態である。
【0077】
ステップS108において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、条件に適合するパーティを敵方パーティとして決定し、マッチングを完了する。つまり、プロセッサ210は、1つの第2パートのゲームに参加する複数のパーティを決定する。この複数のパーティは、1以上の味方パーティと、1以上の敵方パーティと、を含む。以下の説明では、1つの第2パートのゲームに参加する複数のパーティを「参加パーティ」と示す。
【0078】
参加パーティは、少なくとも1以上の第1パーティと、1以上の第2パーティと、を含む。第1パーティに所属することは、第1属性であることの一例である。第2パーティに所属することは、第2属性であることの一例である。これに限らず、属性は、フレンド登録がされているか否か、複数のユーザが所属し得るギルドが同じであるか否か、又は、複数のパーティが所属し得るユニオン(陣営)が同じであるか否かなどであってもよい。
【0079】
ステップS110において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、仮想空間を定義する。ステップS110は、仮想空間を定義することの一例である。ステップS112において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、仮想空間に1以上のオブジェクトを配置する。1以上のオブジェクトは、複数の参加パーティにそれぞれ所属するユーザのアバターを含む。
【0080】
第1パーティに所属する他ユーザのアバターは、プレイヤキャラクタとは異なる第1キャラクタの一例である。第2パーティに所属する他ユーザのアバターは、プレイヤキャラクタとは異なる第2キャラクタの一例である。このように、仮想空間には、第1属性に対応し、かつ1以上の第1キャラクタを含む第1グループと、第2属性に対応し、かつ1以上の第2キャラクタを含む第2グループと、が設けられる。ユーザは、第1パーティ、及び第2パーティの何れにも所属してもよい。つまり、プレイヤの属性は、第1属性、及び第2属性の何れであってもよい。プレイヤキャラクタは、プレイヤの属性に応じて、第1グループ、又は第2グループに含まれ得る。1以上の味方パーティに所属するユーザ同士は、同じ属性を有する味方ユーザである。互いに敵対する複数のパーティに分かれて所属するユーザ同士は、異なる属性を有する敵方ユーザである。
【0081】
ステップS112では、1人のユーザから見たときに、この1人のユーザのアバター、味方ユーザのアバター、及び敵方ユーザのアバターが、仮想空間に配置される。ステップS112は、プレイヤキャラクタを仮想空間に配置することの一例である。また、ステップS112は、プレイヤキャラクタとは異なる第1キャラクタ及び第2キャラクタを仮想空間に配置することの一例である。
【0082】
一例として、1以上のオブジェクトは、バトルゲームの舞台を構成するフィールドオブジェクトを含んでよい。つまり、仮想空間は、プレイヤキャラクタの移動を許容するフィールドを含み得る。一例として、1以上のオブジェクトは、複数の参加パーティにとって共通の敵方キャラクタを含んでよい。一例として、1以上のオブジェクトは、複数の参加パーティにとって共通である障害物、又は共通であるトラップを含んでよい。
【0083】
ステップS114において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、バトル開始要求を端末100へ送信する。プロセッサ210は、バトル開始要求を、参加パーティに所属するユーザが使用する全ての端末100へ送信する。
【0084】
ステップS116において、端末100のプロセッサ110は、ゲームモジュール101Aとして、バトル開始要求を受信する。ステップS118において、端末100のプロセッサ110は、レンダリングモジュール104として、バトル画面60をモニタ166に表示する。つまり、ある第2パートのゲームに使用される複数の端末100において、ゲームは、第1パートから第2パートへ移行する。
【0085】
ステップS120において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、サーバ側のバトル処理を行う。一例として、プロセッサ210は、同じ第2パートのゲームに参加する複数のユーザがそれぞれ使用する複数の端末100から、第1プレイ情報を受信し得る。プロセッサ210は、同じ第2パートのゲームに参加する複数のユーザがそれぞれ使用する複数の端末100から、第2プレイ情報を受信し得る。プロセッサ210は、複数の端末100から受信した各プレイ情報に応じて、各進行情報を生成する。プロセッサ210は、同じ第2パートのゲームに参加するユーザがそれぞれ使用する全ての端末100へ各進行情報を送信する。進行情報は、第1進行情報、及び第2進行情報を含み得る。
【0086】
ステップS122において、端末100のプロセッサ110は、ゲームモジュール101Aとして、端末側のバトル処理を行う。一例として、プロセッサ110は、各進行情報を受信する。プロセッサ110は、レンダリングモジュール104として、受信した各進行情報に応じて、バトル画面60又はアシスト画面70をモニタ166に表示する。各進行情報は、第1進行情報、及び第2進行情報を含み得る。プロセッサ110は、受け付けた各種操作に応じて各プレイ情報を生成し、サーバ200へ送信する。各プレイ情報は、第1プレイ情報、及び第2プレイ情報を含む。
【0087】
ステップS124において、サーバ200のプロセッサ210は、第2パートの終了条件が満たされた場合に、ゲームモジュール201Aとして、同じ第2パートのゲームに参加するユーザがそれぞれ使用する全ての端末100へ、バトル終了要求を送信する。一例として、第2パートの終了条件は、第2パートの制限時間が経過する前に、1以上のパーティが勝利条件を満たした場合、又は、第2パートの制限時間が経過した場合に成立する。
【0088】
ステップS126において、端末100のプロセッサ110は、ゲームモジュール101Aとして、バトル終了要求を受信する。ステップS126において、端末100のプロセッサ110は、レンダリングモジュール104として、リザルト画面75をモニタ166に表示する。ステップS128において、端末100のプロセッサ110は、レンダリングモジュール104として、ホーム画面40をモニタ166に表示する。つまり、端末100において、ゲームは、第2パートから第1パートへ移行する。
【0089】
[アバターの行動を管理するための処理の流れ]
アバターの行動を管理するための処理の流れの一例について説明する。アバターの行動を管理するための処理は、端末側のバトル処理(ステップS122)、及びサーバ側のバトル処理(ステップS120)に含まれる。なお、端末100は、アバターの状態が第1状態であるユーザが使用する端末である。
【0090】
図6に示すように、ステップS130において、端末100のプロセッサ110は、ゲームモジュール101Aとして、自分のアバターの移動を指示する操作、他のアバターへの攻撃を指示する操作、又は所定のオブジェクトへの攻撃を指示する操作を受け付けた場合に、第1プレイ情報をサーバ200へ送信する。アバターの移動を指示する操作は、プレイヤによる第1操作、又は所定の操作の一例である。第1プレイ情報は、第1情報、又は操作情報の一例である。ステップS132において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、第1プレイ情報を受信する。ステップS132は、プレイヤによる第1操作を受け付けた端末100が送信する第1情報を受信することの一例である。ステップS132は、プレイヤによる所定の操作を受け付けた端末100が送信する操作情報を受信することの一例である。
【0091】
ステップS134において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、受信した第1プレイ情報に応じてアバターの移動を管理する。プロセッサ210は、アバターが第2状態である場合に、第1プレイ情報に応じてアバターを移動させない。プロセッサ210は、アバターが第1状態である場合に、第1プレイ情報に応じてアバターを移動させる。ステップS134は、受信した第1情報に応じて、仮想空間でプレイヤキャラクタを移動させることの一例である。ステップS134は、プレイヤキャラクタの状態が第2状態である場合に、仮想空間でプレイヤキャラクタを移動させることの実行を規制することの一例である。
【0092】
ステップS136において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、アバターによる攻撃動作を管理する。プロセッサ210は、アバターが第2状態である場合に、第1プレイ情報に応じて攻撃動作を行わせない。プロセッサ210は、アバターが第1状態である場合に、第1プレイ情報に応じて攻撃動作を行わせる。プロセッサ210は、敵方ユーザのアバターに、攻撃が命中したか否かを判定する。プロセッサ210は、敵方ユーザのアバターに、攻撃が命中したと判定した場合に、そのアバターのヒットポイントを減少させる。つまり、一例として、プロセッサ210は、1人のユーザから見たときに、当該1人のユーザのアバター、味方ユーザのアバター、及び敵方ユーザのアバターの各々に対応するパラメータ値の一例としてヒットポイントを管理する。
【0093】
ステップS136は、受信した情報に応じて、仮想空間でプレイヤキャラクタに攻撃させることの一例である。ステップS136は、プレイヤキャラクタの状態が第2状態である場合に、仮想空間でプレイヤキャラクタに攻撃させることの実行を規制することの一例である。ステップS136は、プレイヤキャラクタ、第1キャラクタ、及び第2キャラクタの各々に対応するパラメータ値を管理することの一例である。ステップS134,S136は、プレイヤキャラクタの状態が第1状態である場合に、受信した操作情報に応じて、仮想空間に第1事象を発生させることの一例である。つまり、アバターの移動及び攻撃は、第1事象の一例である。
【0094】
ステップS138において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、第1進行情報を端末100へ送信する。ステップS140において、端末100のプロセッサ110は、ゲームモジュール101Aとして、第1進行情報を受信する。端末100のプロセッサ110は、ゲームモジュール101Aとして、仮想空間を更新する。端末100のプロセッサ110は、レンダリングモジュール104として、更新後の仮想空間に応じてバトル画面60又はアシスト画面70をモニタ166に表示する。
【0095】
[アバターの状態を変更するための処理の流れ]
アバターの状態を変更するための処理の流れの一例について説明する。アバターの状態を変更するための処理は、バトルゲームからアシストゲームへ移行させる処理である。アバターの状態を変更するための処理は、端末側のバトル処理(ステップS122)、及びサーバ側のバトル処理(ステップS120)に含まれる。
【0096】
図7に示すように、ステップS200において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、アバターごとに特定パラメータ値が特定値になったか否かを判定する。一例として、プロセッサ210は、アバターのヒットポイントが0になったか否かを判定する。ステップS200は、アバターごとに、特定の条件が成立したか否かを判定することの一例である。
【0097】
ヒットポイントが0になっていない場合に、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、ステップS202を繰り返す。つまり、プロセッサ210は、待機する。ヒットポイントが0になった場合に、サーバ200のプロセッサ210は、ステップS202に進む。ステップS202において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、ヒットポイントが0になったアバターのステータス情報を、第1状態を示す内容から第2状態を示す内容に変更する。一例として、ステータス情報は、メモリモジュール205としてのメモリ220に記憶される。つまり、プロセッサ210は、アバターの状態を生存状態から死亡状態に変更する。ステップS202は、特定の条件が成立した場合に、プレイヤキャラクタの状態を第1状態から第2状態に変更することの一例である。ステップS202は、第1キャラクタ、及び第2キャラクタのうち、対応するパラメータ値が特定値となったキャラクタの状態を第1状態から第2状態に変更することの一例である。
【0098】
上述したステップS138において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、死亡状態となったアバターを示す第1進行情報を端末100へ送信する。端末100のプロセッサ110は、ゲームモジュール101Aとして、受信した第1進行情報に応じて、死亡状態となったアバターを仮想空間から取り除く。つまり、端末100のプロセッサ110は、レンダリングモジュール104として、死亡状態となったアバターをモニタ166に表示しない。
【0099】
これに限らず、端末100のプロセッサ110は、ゲームモジュール101Aとして、仮想空間からアバターを取り除く代わりに、1以上のオブジェクトを仮想空間に配置してもよい。この1以上のオブジェクトは、仮想空間から取り除かれるアバターの墓標オブジェクトであってもよく、仮想空間から取り除かれるアバターが回収した指定オブジェクトであってもよい。ステップS138は、プレイヤキャラクタの状態を第1状態から第2状態に変更した場合に、プレイヤキャラクタをフィールドに表示しないことの要求を端末100に送信することの一例である。
【0100】
ステップS204において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、アシスト開始要求を、ヒットポイントが0になったアバターの操作に使用されている端末100へ送信する。ステップS206において、端末100のプロセッサ110は、ゲームモジュール101Aとして、アシスト開始要求を受信する。ステップS208において、端末100のプロセッサ110は、レンダリングモジュール104として、アシスト移行画面65、及びアシスト画面70の順に、各画面をモニタ166に表示する。詳しくは後述するように、アシスト移行画面65は、アシストゲームの開始を報知する情報を含む。つまり、ステップS204は、プレイヤキャラクタの状態を第1状態から第2状態に変更した場合に、第2ゲームの開始報知を行うことの要求を、端末100に送信することの一例である。
【0101】
一例として、ステップS208において、端末100のプロセッサ110は、仮想空間をレンダリングした画像を生成するときの視点を第1視点から第2視点に変更する。つまり、ステップS204は、プレイヤキャラクタの状態を第1状態から第2状態に変更した場合に、仮想空間をレンダリングした画像を生成するときの視点を第1視点から第2視点に変更することの要求を、端末に送信することの一例である。一例として、第1視点は、プレイヤキャラクタに対応する視点である。一例として、第2視点は、フィールドを俯瞰する視点である。
【0102】
[アシストオブジェクトを配置するための処理の流れ]
アシストオブジェクトを配置するための処理の流れの一例について説明する。アシストオブジェクトを配置するための処理は、端末側のバトル処理(ステップS122)、及びサーバ側のバトル処理(ステップS120)に含まれる。
【0103】
図8に示すように、ステップS210において、端末100のプロセッサ110は、ゲームモジュール101Aとして、アシストオブジェクトの配置を指示する配置操作を受け付けると、オブジェクト配置要求をサーバ200へ送信する。オブジェクト配置要求は、第2プレイ情報に含まれる。アシストオブジェクトの配置を指示する配置操作は、第2操作、又は所定の操作の一例である。第2プレイ情報(オブジェクト配置要求)は、第2情報、又は操作情報の一例である。
【0104】
ステップS212において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、オブジェクト配置要求を受信する。ステップS212は、ユーザによる第2操作を受け付けた端末100が送信する第2情報を受信することの一例である。ステップS212は、ユーザによる所定の操作を受け付けた端末100が送信する操作情報を受信することの一例である。
【0105】
ステップS214において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、アシストオブジェクトの配置数が規定数Nに達しているか否かを判定する。プロセッサ210は、第2パートに参加するユーザごとに、アシストオブジェクトの配置数をカウントする。規定数Nは、1であってよく、2以上であってもよい。
【0106】
アシストオブジェクトの配置数が規定数Nに達していない場合に、サーバ200のプロセッサ210は、ステップS216に進む。ステップS216において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、オブジェクト配置要求に応じてアシストオブジェクトを仮想空間に配置する。一例として、プロセッサ210は、第2プレイ情報に含まれる座標情報に応じた位置にアシストオブジェクトを配置する。一例として、プロセッサ210は、第2プレイ情報に含まれる種類情報に応じた種類のアシストオブジェクトを配置する。ステップS216は、プレイヤキャラクタの状態が第2状態である場合に、受信した第2情報に応じて、1以上の特定オブジェクトを仮想空間に配置することの一例である。ステップS216は、プレイヤキャラクタの状態が第2状態である場合に、受信した操作情報に応じて、仮想空間に第1事象と異なる第2事象を発生させることの一例である。つまり、仮想空間にアシストオブジェクトが配置されることは、第2事象の一例である。ステップS216が終了した場合に、プロセッサ210は、ステップS218に進む。
【0107】
アシストオブジェクトの配置数が規定数Nに達している場合に、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、ステップS216を行わない。つまり、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、アシストオブジェクトを仮想空間に配置しない。ステップS214は、規定数Nの特定オブジェクトが仮想空間に配置されている場合に、追加の特定オブジェクトを仮想空間に配置することの実行を規制することの一例である。
【0108】
ステップS218において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、オブジェクト表示要求を端末100へ送信する。オブジェクト表示要求は、アシストオブジェクトを配置したユーザの属性を示す情報を含む。オブジェクト表示要求は、第2進行情報に含まれる。ステップS220において、端末100のプロセッサ110は、ゲームモジュール101Aとして、オブジェクト表示要求を受信する。
【0109】
オブジェクト表示要求を受信した場合に、端末100のプロセッサ110は、ゲームモジュール101Aとして、オブジェクト表示要求に応じてアシストオブジェクトを仮想空間に配置する。端末100のプロセッサ110は、レンダリングモジュール104として、各画面60,65,70において、アシストオブジェクトを表示する場合に、そのアシストオブジェクトを配置したユーザの属性を示す属性情報をモニタ166に表示する。ステップS218は、第2プレイ情報を受信した場合に、特定オブジェクトの配置を行ったプレイヤの属性を示す情報を報知することの要求を、端末100に送信することの一例である。
【0110】
[アシストオブジェクトを仮想空間から取り除くための処理の流れ]
アシストオブジェクトを仮想空間から取り除くための処理の流れの一例について説明する。アシストオブジェクトを仮想空間から取り除くための処理は、端末側のバトル処理(ステップS122)、及びサーバ側のバトル処理(ステップS120)に含まれる。
【0111】
図9に示すように、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、仮想空間に配置したアシストオブジェクトごとに、アシストオブジェクトを仮想空間から取り除くための処理を行う。ステップS230において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、アシストオブジェクトを配置してから撤去時間T1が経過したか否かを判定する。プロセッサ210は、仮想空間に配置したアシストオブジェクトごとに、そのアシストオブジェクトを配置してからの経過時間を計測する。
【0112】
撤去時間T1が経過していない場合に、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、ステップS230を繰り返す。つまり、プロセッサ210は、待機する。撤去時間T1が経過した場合に、サーバ200のプロセッサ210は、ステップS232に進む。ステップS232において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、仮想空間に配置したアシストオブジェクトを取り除く。つまり、撤去時間T1が経過することによって、アシストオブジェクトの撤去条件が満たされ得る。
【0113】
ステップS232において、仮想空間から取り除かれるアシストオブジェクトは、第1系統のアシストオブジェクトを含む。ステップS232において、仮想空間から取り除かれるアシストオブジェクトは、仮想空間から取り除かれないまま、配置されてから撤去時間T1が経過した第2系統のアシストオブジェクトを含む。ステップS232は、仮想空間に配置された各特定オブジェクトを、この特定オブジェクトが仮想空間に配置されてからの時間が規定時間に達した場合に仮想空間から取り除くことの一例である。
【0114】
ステップS234において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、オブジェクト撤去要求を端末100へ送信する。オブジェクト撤去要求は、第2進行情報に含まれる。ステップS236において、端末100のプロセッサ110は、ゲームモジュール101Aとして、オブジェクト撤去要求を受信する。ステップS236において、端末100のプロセッサ110は、ゲームモジュール101Aとして、仮想空間に配置されたアシストオブジェクトを取り除く。つまり、端末100のプロセッサ110は、レンダリングモジュール104として、撤去されたアシストオブジェクトをモニタ166に表示しない。
【0115】
[第2系統のアシストオブジェクトの効果を発揮させるための処理の流れ]
第2系統のアシストオブジェクトの効果を発揮させるための処理の流れの一例について説明する。第2系統のアシストオブジェクトの効果を発揮させるための処理は、端末側のバトル処理(ステップS122)、及びサーバ側のバトル処理(ステップS120)に含まれる。
【0116】
図10に示すように、サーバ200のプロセッサ210は、仮想空間に配置したアシストオブジェクトごとに、第2系統のアシストオブジェクトの効果を発揮させるための処理を行う。ステップS240において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、第2系統のアシストオブジェクトの効果を発揮させる有効化条件が成立したか否かを判定する。
【0117】
一例として、有効化条件は、仮想空間にアシストオブジェクトが配置されてから予め定めた有効化時間T2が経過したことであってよい。一例として、有効化条件は、特定のアバターがアシストオブジェクトに接触することであってよい。一例として、有効化条件は、特定のアバターがアシストオブジェクトを中心とした一定範囲内に入ることであってよい。一例として、有効化条件は、特定のアバターの攻撃がアシストオブジェクトに命中することであってよい。一例として、特定のアバターは、アシストオブジェクトを配置したユーザからみて、味方ユーザのアバターであってよい。一例として、特定のアバターは、アシストオブジェクトを配置したユーザからみて、敵方ユーザのアバターであってよい。一例として、特定のアバターは、アシストオブジェクトを配置したユーザからみて、味方ユーザのアバター、及び敵方ユーザのアバターの両方であってよい。
【0118】
有効化条件が成立していない場合に、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、ステップS240を繰り返す。つまり、プロセッサ210は、待機する。有効化条件が成立した場合に、サーバ200のプロセッサ210は、ステップS242に進む。
【0119】
ステップS242において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、仮想空間においてアシストオブジェクトの効果を発揮させる。後述のように、アシストオブジェクトの撤去条件は、アシストオブジェトの効果が発揮された場合に満たされるときがある。ステップS242において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、アシストオブジェトの撤去条件が満たされた場合に、そのアシストオブジェクトを仮想空間から取り除く。
【0120】
ステップS244において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、効果表示要求を端末100へ送信する。アシストオブジェクトの撤去条件が満たされた場合に、効果表示要求は、アシストオブジェクトを仮想空間から取り除くことを指示する情報を含む。
【0121】
ステップS246において、端末100のプロセッサ110は、ゲームモジュール101Aとして、効果表示要求を受信する。端末100のプロセッサ110は、ゲームモジュール101Aとして、仮想空間においてアシストオブジェクトの効果を発揮させる。端末100のプロセッサ110は、効果表示要求によって、アシストオブジェクトを取り除くことが指示される場合に、ゲームモジュール101Aとして、仮想空間からアシストオブジェクトを取り除く。端末100のプロセッサ110は、レンダリングモジュール104として、アシストオブジェクトを表示する場合に、そのアシストオブジェクトの効果が発揮されたことを示す情報をモニタ166に表示する。
【0122】
[端末における表示画面の一例と表示に関する処理の流れ]
[仮想空間の概略]
一例として、サーバ200によって定義された仮想空間、及びこの仮想空間における事象は、同じ第2パートのゲームに参加するユーザが使用する全ての端末100において、同時進行で再現され得る。つまり、サーバ200が管理する仮想空間、及びこの仮想空間における事象は、各端末100から受信する各プレイ情報に応じて更新される。サーバ200は、仮想空間、及び仮想空間における事象を更新した結果に応じて、各進行情報を各端末100へ送信する。各端末100が管理する仮想空間、及びこの仮想空間における事象は、サーバ200から受信する各進行情報に応じて、その都度、更新される。以下の説明において、単に「仮想空間」と示す場合、サーバ200及び複数の端末100によって共有された仮想空間を示すものとする。
【0123】
図11に示すように、仮想空間80に配置され得る各種のオブジェクトは、ユーザのアバター81を含む。仮想空間80に配置され得る各種のオブジェクトは、フィールド92Aを構成するための地形オブジェクト92を含む。一例として、地形オブジェクト92は、アバターの移動に影響を与えるオブジェクトを含んでよい。例えば、地形オブジェクト92は、樹木、岩、川、海、及び山など、アバターの移動を制限するオブジェクトを含んでよい。例えば、地形オブジェクト92は、沼地など、アバターの移動速度を減少させるオブジェクトを含んでよい。例えば、地形オブジェクト92は、氷床など、アバターの移動速度を増加させるオブジェクトを含んでよい。一例として、地形オブジェクト92は、アバターのパラメータ値に影響を与えるオブジェクトを含んでよい。例えば、地形オブジェクト92は、毒沼など、アバターのヒットポイントを減少させるオブジェクトを含んでよい。例えば、地形オブジェクト92は、回復の泉など、アバターのヒットポイントを増加させるオブジェクトを含んでよい。
【0124】
図11、及び
図12に示すように、仮想空間80に配置され得る各種のオブジェクトは、アシストオブジェクト94を含む。
第1系統のアシストオブジェクトの具体的な一例について説明する。
【0125】
例えば、第1系統のアシストオブジェクト94は、アバターの通過を制限する効果を有する壁オブジェクト94Aを含んでよい。壁オブジェクト94Aは、第1特定オブジェクトの一例である。壁オブジェクト94Aは、味方ユーザ及び敵方ユーザの何れのアバターも通過できない効果を有してもよい。壁オブジェクト94Aは、味方ユーザのアバターが通過できるが、敵方ユーザのアバターが通過できない効果を有してもよい。第1特定オブジェクトは、少なくとも第2キャラクタが通過することを規制するオブジェクトであるとよい。壁オブジェクト94Aの撤去条件は、仮想空間に配置されてから撤去時間T1が経過することで成立し得る。
【0126】
第2系統のアシストオブジェクトの具体的な一例について説明する。
例えば、第2系統のアシストオブジェクト94は、味方ユーザのアバターが攻撃を命中させた場合に破壊可能であり、かつそのアバターのヒットポイントを回復させる効果を有する木箱オブジェクト94Bを含んでよい。木箱オブジェクト94Bは、敵方ユーザのアバターが攻撃を命中させたときに破壊可能であり、かつそのアバターのヒットポイントを回復させる効果を有してもよい。木箱オブジェクト94Bは、少なくとも第1キャラクタが効果を発揮させられるオブジェクトであるとよい。木箱オブジェクト94Bの有効化条件は、アバターが攻撃を命中させることで成立し得る。木箱オブジェクト94Bの撤去条件は、効果が発揮されること、又は仮想空間に配置されてから撤去時間T1が経過することで成立し得る。
【0127】
例えば、第2系統のアシストオブジェクト94は、味方ユーザのアバターが一定範囲内に入った場合に、その一定範囲に入ったアバターのヒットポイントを回復させる効果を有する温泉オブジェクト94Cを含んでよい。温泉オブジェクト94Cは、第2特定オブジェクトの一例である。アシストオブジェクト94は、敵方ユーザのアバターが一定範囲内に入った場合に、その一定範囲に入ったアバターのヒットポイントを回復させる効果を有してもよい。第2特定オブジェクトは、少なくとも第1キャラクタに対応するパラメータ値を回復させることができるオブジェクトであるとよい。温泉オブジェクト94Cの有効化条件は、アバターが一定範囲内に入ることで成立し得る。温泉オブジェクト94Cの撤去条件は、仮想空間に配置されてから撤去時間T1が経過することで成立し得る。
【0128】
例えば、第2系統のアシストオブジェクト94は、配置されてから一定時間が経過すると爆発する爆弾オブジェクト94Dを含んでよい。爆弾オブジェクト94Dは、爆発した場合に、一定範囲内にいる敵方ユーザのアバターのヒットポイントを減少させる効果を有する。爆弾オブジェクト94Dは、爆発した場合に、一定範囲内にいる味方ユーザのアバターのヒットポイントを減少させる効果を有してもよい。爆弾オブジェクト94Dは、少なくとも第2キャラクタの特定パラメータ値を減少させることができるオブジェクトであるとよい。爆弾オブジェクト94Dの有効化条件は、仮想空間に配置されてから一定時間が経過することで成立し得る。爆弾オブジェクト94Dの撤去条件は、効果が発揮されることで成立し得る。
【0129】
例えば、第2系統のアシストオブジェクト94は、敵方ユーザのアバターが触れた場合に、一定時間が経過するまで移動不能になる効果を有するトラばさみオブジェクトを含んでよい。トラばさみオブジェクトは、味方ユーザのアバターが触れた場合に、一定時間が経過するまで移動不能になる効果を有してもよい。トラばさみオブジェクトは、少なくとも第2キャラクタの移動を一定時間にわたって制限できるオブジェクトであるとよい。トラばさみオブジェクトの有効化条件は、アバターが触れることで成立し得る。トラばさみオブジェクトの撤去条件は、効果が発揮されること、又は仮想空間に配置されてから撤去時間T1が経過することで成立し得る。
【0130】
例えば、第2系統のアシストオブジェクト94は、配置されると一定範囲内にいる敵方ユーザのアバターを狙って攻撃を行う砲台オブジェクトを含んでよい。敵方ユーザのアバターに、砲台オブジェクトの攻撃が命中した場合、そのアバターのヒットポイントが減少する。砲台オブジェクトは、味方ユーザのアバターを狙って攻撃を行う効果を有してもよい。砲台オブジェクトは、少なくとも第2キャラクタを攻撃するオブジェクトであるとよい。砲台オブジェクトの有効化条件は、アバターが一定範囲内に入ることで成立し得る。砲台オブジェクトの撤去条件は、仮想空間に配置されてから撤去時間T1が経過することで成立し得る。
【0131】
例えば、アシストオブジェクト94は、敵方ユーザのアバターが触れると、そのアバターのヒットポイントが減少する効果を有する毒薬オブジェクトを含んでよい。毒薬オブジェクトは、味方ユーザのアバターが触れると、そのアバターのヒットポイントが減少する効果を有してもよい。毒薬オブジェクトは、少なくとも第2キャラクタのヒットポイントを減少させるオブジェクトであるとよい。毒薬オブジェクトの有効化条件は、アバターが触れることで成立し得る。毒薬オブジェクトの撤去条件は、効果が発揮されること、又は仮想空間に配置されてから撤去時間T1が経過することで成立し得る。
【0132】
[ホーム画面]
図13に示すように、ゲームの第1パートにおいて、端末100のモニタ166には、ホーム画面40が表示される。ホーム画面40は、各種のオブジェクトを含み得る。一例として、ホーム画面40は、アバターウィンドウ401、バトルアイコン404、及びキャラクタアイコン406を含み得る。ホーム画面40は、パーティに参加するユーザを募集する場合に使用する募集アイコン、自分のゲームプレイを配信する場合に使用する配信開始アイコンを含んでもよい。
【0133】
一例として、アバターウィンドウ401には、自分のアバター81が表示される。アバター81の外観は、第1パートのゲームプレイを通して、アバターの設定が変更されることに応じて変化する。一例として、バトルアイコン404が表示されている部分をタップ操作することによって、前述の開始操作を行うことができる。一例として、キャラクタアイコン406が表示されている部分をタップ操作することによって、バトルゲームの準備を行うための準備ウィンドウ(不図示)の表示を指示する操作を行うことができる。
【0134】
[マッチング画面]
図14に示すように、サーバ200がマッチング処理(ステップS106)を行っている場合に、端末100のモニタ166には、それぞれマッチング画面50が表示される。マッチング画面50は、各種のオブジェクトを含み得る。マッチング画面50は、ユーザのアバターを表示するアバターウィンドウ501を含む。一例として、アバターウィンドウ501には、自分のアバター81が表示される。マッチング画面50は、マッチングを行っていることを示す文字データ等の情報を含む。
【0135】
[バトル画面]
図15、及び
図16に示すように、第2パートが開始された場合に、端末100のモニタ166には、最初にバトル画面60が表示される。バトル画面60は、第2パートの第1ゲームである場合に、モニタ166に表示される。バトル画面60は、各種のオブジェクトを含む。一例として、バトル画面60は、それぞれ端末100を使用するユーザのアバター81を含む。一例として、バトル画面60には、ユーザが所属するパーティのポイント表示欄、及び自分のアバターのヒットポイントを示すHPバー61を含み得る。
【0136】
一例として、ステップS122において、端末100のプロセッサ110は、レンダリングモジュール104として、端末100を使用するユーザのアバター81をモニタ166の中央に表示する。端末100のプロセッサ110は、仮想空間80において、アバター81の頭上後方に仮想カメラ98を配置することによって、仮想カメラ98の視界領域内に収められる範囲をモニタ166に表示する。アバター81の頭上後方の視点は、プレイヤキャラクタに対応した第1視点の一例である。これに限らず、第1視点は、プレイヤキャラクタの頭部からフィールドを見た一人称視点、又はプレイヤキャラクタを中心としてフィールドを見た俯瞰視点であってもよい。
【0137】
端末100のプロセッサ110は、サーバ200(ゲームモジュール201A)から受信する第1進行情報に応じて、味方ユーザのアバター、及び敵方ユーザのアバターを仮想空間80に配置する。端末100のプロセッサ110は、仮想カメラ98の視界領域内に他ユーザのアバターが収まる場合に、それらアバターを、モニタ166に表示し得る。それらアバターは、モニタ166に表示される場合に、アクション情報に応じたアクションを伴う。また、端末100のプロセッサ110は、レンダリングモジュール104として、敵方ユーザのアバターを表示する場合に、そのアバターのヒットポイントを示すHPバー63を、モニタ166に表示する。端末100のプロセッサ110は、レンダリングモジュール104として、味方ユーザのアバターを表示する場合に、そのアバターのヒットポイントを示すHPバー63を、モニタ166に表示する。一例として、HPバー63は、アバター81の頭上に配置される。
【0138】
端末100のプロセッサ110は、サーバ200(ゲームモジュール201A)から受信する第2進行情報に応じて、1以上のアシストオブジェクト94を仮想空間80に配置する。端末100のプロセッサ110は、仮想カメラ98の視界領域内に、1以上のアシストオブジェクト94が収まる場合に、そのアシストオブジェクト94を、モニタ166に表示し得る。端末100のプロセッサ110は、アシストオブジェクト94をモニタ166に表示する場合に、このアシストオブジェクト94が第1パーティ及び第2パーティの何れに所属するユーザによって配置されたオブジェクトであるかを示す属性情報をモニタ166に表示する。一例として、属性情報は、アシストオブジェクト94を囲う枠線62である。枠線62は、アシストオブジェクト94が、味方ユーザ及び敵方ユーザの何れによって配置されたものであるかを示す情報であってもよい。特定オブジェクトは、プレイヤの属性に応じて異なる視覚効果を伴うとよい。
【0139】
図11、
図15、及び
図16を参照して、バトル画面60のより具体的な表示態様の一例について説明する。ここで、以下の説明において、ユーザA及びユーザCは、第1パーティに所属しており、ユーザBは、第2パーティに所属していると仮定する。ユーザA~Cが使用する端末100をそれぞれ端末100A~100Cと示す。ユーザA,Bのアバター81をそれぞれアバター81A,81Bと示す。
【0140】
端末100Aのモニタ166には、仮想空間80のうち、アバター81Aに対応する仮想カメラ98Aの視界領域内に収められる範囲が表示される。一例として、仮想カメラ98Aは、仮想空間80において、アバター81Aの頭上後方に配置される。
【0141】
ここで、オブジェクト94A1,94B1は、第1パーティに所属するユーザが配置したオブジェクトである。オブジェクト94A2,94B2は、第2パーティに所属するユーザが配置したオブジェクトである。端末100Aのモニタ166において、オブジェクト94A1,94B1は、太い実線で示すように、赤い縁取りをする枠線62を伴って表示される。端末100Aのモニタ166において、オブジェクト94A2,94B2は、太い破線で示すように、青い縁取りをする枠線62を伴って表示される。
【0142】
端末100Bのモニタ166には、仮想空間80のうち、アバター81Bに対応する仮想カメラ98Bの視界領域内に収められる範囲が表示される。一例として、仮想カメラ98Bは、仮想空間80において、アバター81Bの頭上後方に配置される。
【0143】
端末100Bのモニタ166において、オブジェクト94A1,94B1は、太い実線で示すように、赤い縁取りをする枠線62を伴って表示される。端末100Aのモニタ166において、オブジェクト94A2,94B2は、太い破線で示すように、青い縁取りをする枠線62を伴って表示される。
【0144】
[アシスト移行画面]
図17に示すように、端末100のモニタ166には、アバターの状態が第1状態から第2状態に変更された場合に、アシスト移行画面65が表示される。アシスト移行画面65は、第2パートにおけるアシストゲームの開始を報知する開始情報66を含む。一例として、開始情報は、「アシストスタート」の文字データである。
【0145】
一例として、ステップS208において、端末100のプロセッサ110は、レンダリングモジュール104として、仮想空間80をレンダリングした画像を生成するときの視点を第1視点から第2視点に変更する。一例として、仮想カメラ98は、アバターの状態が第2状態に変更された位置を中心として、フィールドを俯瞰する位置に設定される。端末100のプロセッサ110は、仮想カメラ98の視界領域内に収められる範囲をモニタ166に表示する。これに限らず、第2視点は、味方ユーザのアバターに対応する視点であってよく、敵方ユーザのアバターに対応する視点であってもよく、他のオブジェクトに対応する視点であってもよい。なお、第1視点は、第2視点と同じ視点であってもよい。
【0146】
[アシスト画面]
図18に示すように、ゲームが第2パートである場合に、端末100のモニタ166には、アシスト移行画面65が表示された後にアシスト画面70が表示される。アシスト画面70は、各種のオブジェクトを含み得る。一例として、アシスト画面70は、アシストアイコン71、及び視点変更アイコン702含む。アシスト画面70は、ユーザが所属するパーティのポイント表示欄を含んでもよい。アシスト画面70は、味方ユーザのうち、アバターが第1状態であるユーザからのメッセージを含んでもよい。
【0147】
一例として、アシストアイコン71が表示されている部分をタップ操作することによって、前述の配置操作を行うことができる。アシストアイコン71は、複数種類のアシストオブジェクトのうち、配置操作によって仮想空間80に配置できるアシストオブジェクトを示す情報を含む。一例として、壁オブジェクト94Aを配置するためのアシストアイコン71Aは、壁オブジェクト94Aを示す絵柄を含む。一例として、温泉オブジェクトを配置するためのアシストアイコン71Cは、温泉オブジェクトを示す絵柄を含む。一例として、爆弾オブジェクト94Dを配置するためのアシストアイコン71Dは、爆弾オブジェクト94Dを示す絵柄を含む。端末100のプロセッサ110は、ゲームモジュール101Aとして、ドラッグ操作されたアシストアイコン71から、配置するアシストオブジェクト94の種類を特定する。端末100のプロセッサ110は、ドラッグ操作された位置から、アシストオブジェクト94の配置位置を取得する。ステップS210において、端末100のプロセッサ110は、ゲームモジュール101Aとして、アシストオブジェクトの種類情報、及び座標情報を含む第2プレイ情報(オブジェクト配置要求)をサーバ200へ送信する。
【0148】
一例として、視点変更アイコン702が表示されている部分をタップ操作することによって、視点の変更を指示する視点変更操作を行うことができる。視点変更アイコン702は、味方ユーザのアバターのうち、第1状態であるアバターにそれぞれ対応して表示される。
【0149】
端末100のプロセッサ110は、サーバ200(ゲームモジュール201A)から受信する第1進行情報に応じて、味方ユーザのアバター、及び敵方ユーザのアバターを仮想空間80に配置する。端末100のプロセッサ110は、仮想カメラ98の視界領域内に他ユーザのアバターが収まる場合に、それらアバターを、モニタ166に表示し得る。それらアバターは、モニタ166に表示される場合に、アクション情報に応じたアクションを伴う。つまり、プロセッサ110は、アバターが第2状態である場合も、アバターが第1状態であったときと同じ仮想空間80を使用する。また、端末100のプロセッサ110は、レンダリングモジュール104として、味方ユーザ又は敵方ユーザのアバターを表示する場合に、それらのアバターのヒットポイントを示すHPバー63を、モニタ166に表示する。一例として、HPバー63は、アバターの頭上に配置される。
【0150】
端末100のプロセッサ110は、ゲームモジュール101Aとして、視点変更操作を受け付ける。視点変更操作を受け付けた場合に、端末100のプロセッサ110は、タップ操作がされた視点変更アイコンに対応するアバターを中心として、フィールドを俯瞰する位置へ仮想カメラ98の位置を変更する。端末100のプロセッサ110は、レンダリングモジュール104として、仮想カメラ98の視界領域内に収められる範囲をモニタ166に表示する。
【0151】
端末100のプロセッサ110は、サーバ200(ゲームモジュール201A)から受信する第2進行情報に応じて、1以上のアシストオブジェクト94を仮想空間80に配置する。端末100のプロセッサ110は、仮想カメラ98の視界領域内に、1以上のアシストオブジェクト94が収まる場合に、そのアシストオブジェクト94を、モニタ166に表示し得る。端末100のプロセッサ110は、アシストオブジェクト94をモニタ166に表示する場合に、上記属性情報をモニタ166に表示する。つまり、特定オブジェクトは、プレイヤの属性に応じて異なる視覚効果を伴うとよい。
【0152】
図11、
図19、及び
図20を参照して、アシスト画面70のより具体的な表示態様の一例について説明する
図19に示すように、モニタ166には、フィールド92Aを俯瞰する位置に仮想カメラ98Cが設定される。ユーザCが、端末100Cのモニタ166に表示されたアシストアイコン71Dをタップし、モニタ166に表示されているフィールド92Aのうち、任意の位置までドラッグ操作したとする。この場合、端末100Cのプロセッサ110は、ゲームモジュール101Aとして、配置が指示されたアシストオブジェクトの種類として爆弾オブジェクト94Dを特定する。端末100Cのプロセッサ110は、ゲームモジュール101Aとして、爆弾オブジェクト94D1を配置する座標を特定する。
【0153】
図20に示すように、端末100Aのモニタ166には、爆弾オブジェクト94Dが出現する。この爆弾オブジェクト94Dは、配置されてから一定時間が経過すると効果を発揮する。爆弾オブジェクト94Dは、効果を発揮した場合に、一定範囲内にいる敵方ユーザのアバターのヒットポイントを減少させる。爆弾オブジェクト94Dは、効果を発揮した場合に、仮想空間から取り除かれる。
【0154】
アシストゲームに参加できるユーザの人数について説明する。
一例として、1つの第2パートのゲームに参加できるパーティの数をPとし、1つのパーティに所属できるユーザの数をQと仮定する。この場合に、第2パートが開始した時点において、バトルゲームに参加しているユーザの数は、P×Qである。ヒットポイントの管理は、アバターごとにされる。アバターのヒットポイントが0になった場合に、そのアバターの状態は、第1状態から第2状態に変更される。アバターの状態が第2状態に変更された場合に、そのアバターを有するユーザは、バトルゲームを終了して、アシストゲームに参加する。つまり、そのユーザが所属するパーティのうち、バトルゲームに参加しているユーザの数が1減少する。そのユーザが所属するパーティのうち、アシストゲームに参加しているユーザの数が1増加する。一例として、パーティごとに、アシストゲームに参加できるユーザの人数は、最大でQ-1である。アシストゲームに参加する味方ユーザは、自分を含めて複数になる場合がある。アシストゲームに参加する敵方ユーザは、複数になる場合がある。
【0155】
[リザルト画面]
第2パートが終了し、第1パートに移行する場合に、端末100のモニタ166には、それぞれリザルト画面75が表示される。リザルト画面75は、各種のオブジェクトを含み得る。リザルト画面75は、第2パートで勝利したパーティを示すアイコン、ポイントの獲得数が最も多いユーザを示すアイコン、又は他のアバターの討伐数が最も多いユーザを示すアイコン等の情報を含み得る。
【0156】
第1実施形態の効果について説明する。
(1-1)特定の条件が成立することによって、アバターの状態が第1状態から第2状態に変更された場合に、仮想空間80におけるアバターの移動が規制される。その代わり、ユーザは、1以上の特定オブジェクトを仮想空間に配置できるようになる。つまり、ゲーム性は、アバターの状態が第2状態に変化する前と、第2状態に変化した後とで変化する。よって、ユーザの楽しみを増大させることができる。
【0157】
(1-2)アバターは、その状態が第1状態から第2状態に変更された場合に、フィールドから表示されなくなる。よって、ゲーム性の変化を際立たせることができる。
(1-3)ユーザは、自分のアバターの移動が規制された状態でも、敵方ユーザのアバターが通過することを規制する第1特定オブジェクト、及び味方ユーザのアバターのパラメータ値を回復させることができる第2特定オブジェクトのうち少なくとも一方を配置することができる。つまり、ユーザは、仮想空間80に対して影響を与えることができる。これにより、ゲーム性は、アバターの状態が第1状態から第2状態に変更される前後で大きく変化する。よって、ユーザの楽しみを、さらに増大させることができる。
【0158】
(1-4)ユーザが配置できる特定オブジェクトの数には、上限が存在する。よって、仮想空間80に対する影響が過度にならない。
(1-5)ユーザが配置した特定オブジェクトは、規定時間が経過すると取り除かれる。これにより、ユーザは、規定数の特定オブジェクトを配置した後にも、規定時間が経過すれば、新しい特定オブジェクトを配置できる。よって、ユーザは、仮想空間への介入をより長時間にわたって継続することができる。
【0159】
(1-6)アバターの状態が第1状態から第2状態に変更された場合に、視点が、一人称視点から俯瞰視点に変更される。よって、ユーザは、仮想空間80を俯瞰しながら、特定オブジェクトを配置することができる。
【0160】
(1-7)第2ゲームの開始報知が行われる。よって、ユーザは、ゲーム性が変化することについて、事前に準備することができる。
(1-8)特定オブジェクトを配置したユーザの属性を示す情報が報知される。よって、ユーザによる仮想空間80に対する介入状況が明らかになる。
【0161】
(1-9)特定オブジェクトを配置したユーザが何れのグループに属しているかを識別できる。よって、ユーザによる仮想空間80に対する介入状況が明らかになる。
(1-10)同じ種類の特定オブジェクトであっても、第1パーティのユーザが配置するか、第2パーティのユーザが配置するかによって、その効果が異なる。つまり、味方ユーザ、及び敵方ユーザの何れのユーザが配置したかによって、特定オブジェクトの効果が異なる。これにより、特定オブジェクトの効果が画一的にならない。よって、視聴者の楽しみを増大させることができる。
【0162】
(1-11)プレイヤは、特定オブジェクトが、味方ユーザ、及び敵方ユーザの何れによって配置されたのかを識別できる。よって、プレイヤは、仮想空間に配置された特定オブジェクトの効果の違いを視覚的に把握できる。
【0163】
(1-12)第1パーティに所属するユーザが配置した第1特定オブジェクトの効果は、第1パーティに所属するユーザのアバターに対して発揮されるが、第2パーティに所属するユーザのアバターに対して発揮されない。一方、第2パーティに所属するユーザが配置した第1特定オブジェクトの効果は、第2パーティに所属するユーザのアバターに対して発揮されるが、第1パーティに所属するユーザのアバターに対しては発揮されない。よって、各パーティに所属するユーザは、自分と同じ属性を有するユーザに対応するアバターに対して、第1特定オブジェクトの効果を選択的に発揮させることができる。
【0164】
(1-13)第1パーティに所属するユーザが配置した第2特定オブジェクトの効果は、第1パーティに所属するユーザのアバターに対して発揮されないが、第2パーティに所属するユーザのアバターに対して発揮される。一方、第2パーティに所属するユーザが配置した第2特定オブジェクトの効果は、第1パーティに所属するユーザのアバターに対して発揮されるが、第2パーティに所属するユーザのアバターに対しては発揮されない。よって、各パーティに所属するユーザは、自分と異なる属性を有するユーザに対応するアバターに対して、第2特定オブジェクトの効果を選択的に発揮させることができる。
【0165】
(1-14)第2ゲーム(一例としてアシストゲーム)において、ユーザは、自分と同じパーティに所属するユーザのうち、自分が希望するユーザのアバターに対応した視点を選択することができる。よって、ユーザは、同じパーティに所属するユーザのアバターを見ながら、特定オブジェクトを効果的に配置できる。
【0166】
(1-15)第2ゲーム(一例としてアシストゲーム)において、ユーザは、自分と異なるパーティに所属するユーザのアバターに対応した視点を選択することができない。よって、ユーザが、敵方ユーザのアバターの動きを容易に把握することを抑制することができる。
【0167】
(1-16)ユーザは、特定オブジェクトの種類と、特定オブジェクトの位置とを指定できる。よって、ユーザは、望むように特定オブジェクトを配置することができる。
(第2実施形態)
ゲームシステム10において、仮想空間80にアシストオブジェクト94が配置されており、かつアシストオブジェクト94を新たに配置する場合であって、予め定めた変化条件が成立したときに、先に配置されたアシストオブジェクト94が変化してもよい。一例として、アシストオブジェクト94の変化は、アシストオブジェクト94の外観が変化すること、アシストオブジェクト94の効果が変化すること、を含み得る。
【0168】
[アシストオブジェクトを変化させるための処理の流れ]
アシストオブジェクトを変化させるための処理の流れの一例について説明する。
図8に示すように、ステップS216において、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、変化条件が成立したか否かを判定する。変化条件が成立していない場合に、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、新たなアシストオブジェクト94を仮想空間80に配置する。サーバ200のプロセッサ210は、ゲームモジュール201Aとして、先に仮想空間80に配置されているアシストオブジェクト94の外観及び効果を変化させない。
【0169】
変化条件が成立している場合に、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、先に仮想空間80に配置されているアシストオブジェクト94を変化させる。以下の説明では、先に仮想空間80に配置されているアシストオブジェクト94を「組合せ元のアシストオブジェクト」と示す。また、後に仮想空間80に配置されるアシストオブジェクト94を「組合せ後のアシストオブジェクト」と示す。
【0170】
一例として、変化条件は、組合せ元のアシストオブジェクト94と、組合せ後のアシストオブジェクト94と、が特定の関係であるときに成立する。一例として、特定の関係は、1つの観点によって規定されてもよく、複数の観点を組み合わせて規定されてもよい。
【0171】
一例として、変化条件は、組合せ元のアシストオブジェクト94の種類と、組合せ後のアシストオブジェクト94の種類とが特定の関係にあることを含む。一例として、特定の関係は、組合せ元のアシストオブジェクト94の種類と、組合せ後のアシストオブジェクト94の種類とが、同一であることであってよく、異なることであってもよい。
【0172】
一例として、変化条件は、組合せ元のアシストオブジェクト94を配置したユーザの属性と、組合せ後のアシストオブジェクト94を配置するユーザの属性とが特定の関係にあることを含む。一例として、特定の関係は、組合せ元のアシストオブジェクト94を配置したユーザと、組合せ後のアシストオブジェクト94を配置するユーザとが、同じユーザであることであってよく、異なるユーザであることであってもよい。一例として、特定の関係は、組合せ元のアシストオブジェクト94を配置したユーザと、組合せ後のアシストオブジェクト94を配置するユーザとが、同じパーティであることであってよく、異なるパーティであってもよい。一例として、特定の関係は、組合せ元のアシストオブジェクト94を配置したユーザと、組合せ後のアシストオブジェクト94を配置するユーザとが、互いに味方ユーザであることであってよく、互いに敵方ユーザであることであってもよい。
【0173】
一例として、変化条件は、組合せ元のアシストオブジェクト94の位置と、組合せ後のアシストオブジェクト94の位置とが特定の関係にあることを含む。一例として、特定の関係は、組合せ元のアシストオブジェクト94の位置と、組合せ後のアシストオブジェクト94の位置とが、同じ位置であることであってよく、互いに一定の距離以内の位置であることであってもよい。一定の距離は、水平方向における距離であってもよく、高さ方向における距離であってもよく、これらの組合せであってもよい。一例として、特定の関係は、組合せ元のアシストオブジェクト94と、組合せ後のアシストオブジェクト94とが、それぞれの効果範囲の一部が重なりあうことであってもよく、それぞれの効果範囲の全部が重なりあうことであってもよく、一方の効果範囲に、他方の効果範囲が含まれることであってもよい。
【0174】
アシストオブジェクト94の変化態様の一例について説明する。
図21に示すように、アシストオブジェクト94の効果の変化態様は、アシストオブジェクト94の効果を向上させる強化と、アシストオブジェクト94の効果を変質させる妨害と、を含み得る。一例として、アシストオブジェクト94の効果の強化は、アバターのパラメータ値の変化量が増減することと、アバターのパラメータ値を変化させる範囲が増減すること、を含む。
【0175】
一例として、組合せ元のアシストオブジェクトが、味方ユーザによって配置された温泉オブジェクト94Cであり、組合せ後のアシストオブジェクトが、味方ユーザによって配置された温泉オブジェクト94Cであって、かつ、これら2つの温泉オブジェクト94Cの位置が一致する場合について説明する。この場合に、組合せ元の温泉オブジェクト94Cは、外観が豪華な大温泉オブジェクトに変化する。大温泉オブジェクトは、味方ユーザのアバターが触れたときのヒットポイントの回復速度が、温泉オブジェクト94Cと比べて速い。
【0176】
一例として、組合せ元のアシストオブジェクトが、味方ユーザによって配置された木箱オブジェクト94Bであり、組合せ後のアシストオブジェクトが、味方ユーザによって配置された木箱オブジェクト94Bであって、かつ、これら2つの木箱オブジェクト94Bの位置が一致する場合について説明する。この場合に、組合せ元の木箱オブジェクト94Bは、複数の木箱が積み上がった積み上げ木箱オブジェクトに変化する。積み上げ木箱オブジェクトは、味方ユーザのアバターが攻撃したときに、一定範囲内にいる味方ユーザのアバター全員のヒットポイントを回復させる効果を有する。つまり、木箱オブジェクト94Bと比べて、効果を及ぼす範囲が広くなる。
【0177】
一例として、組合せ元のアシストオブジェクトが、味方ユーザによって配置された温泉オブジェクト94Cであり、組合せ後のアシストオブジェクトが、敵方ユーザによって配置された毒薬オブジェクトであって、かつ、これら2つのオブジェクトの位置が一致する場合について説明する。この場合に、組合せ元の温泉オブジェクト94Cは、外観が毒々しい毒沼オブジェクトに変化する。毒沼オブジェクトは、味方ユーザのアバターが触れたときに、そのアバターのヒットポイントを減少させる効果を有する。つまり、温泉オブジェクト94Cとは、性質が異なる。
【0178】
第2実施形態の効果について説明する。
(2-1)第1パーティに所属するユーザが配置した特定オブジェクトと、第1パーティに所属するユーザが配置した特定オブジェクトとの組合せに応じた効果が発揮される。つまり、特定オブジェクトの効果は、第1パーティに所属する複数のユーザが協力することによって変更され得る。よって、複数のユーザに対して、互いに協力する楽しみを提供することができる。
【0179】
(2-2)第1パーティに所属するユーザが配置した特定オブジェクトと、第1パーティに所属するユーザが配置した特定オブジェクトとが、特定の関係を有する場合に、これらの特定オブジェクトが特定の関係を有さないときと、効果が異なる。よって、各ユーザに対して、協力して特定オブジェクトを配置する楽しみを提供することができる。
【0180】
(2-3)第1パーティに所属するユーザが配置した特定オブジェクトと、第2パーティに所属するユーザが配置した特定オブジェクトとが、特定の関係を有する場合に、第1パーティに所属するユーザが配置した特定オブジェクトの効果が、第1パーティのアバターに対して発揮されなくなる。よって、第1パーティに所属するユーザに対して、第2パーティに所属するユーザから邪魔され難いように特定オブジェクトを配置する楽しみを提供することができる。
【0181】
(2-4)第1パーティに所属するユーザが配置した特定オブジェクトと、第2パーティに所属するユーザが配置した特定オブジェクトとが、特定の関係を有する場合に、第1パーティに所属するユーザが配置した特定オブジェクト効果が変化する。よって、第1パーティに所属するユーザに対して、第2パーティに所属するユーザから邪魔され難いように特定オブジェクトを配置する楽しみを提供することができる。
【0182】
上記実施形態は、以下のように変更して実施することができる。上記実施形態及び以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
・味方ユーザのHPバー63は、バトル画面60において表示されないが、アシスト画面70において表示されてもよい。つまり、味方ユーザのHPバー63は、アシストゲームに移行しなければ表示されない。敵方ユーザのHPバー63は、バトル画面60において表示されないが、アシスト画面70において表示されてもよい。つまり、敵方ユーザのHPバー63は、アシストゲームに移行しなければ表示されない。
【0183】
・味方ユーザのHPバー63は、バトル画面60において表示され、かつ、アシスト画面70において表示されてもよい。つまり、味方ユーザのHPバー63は、バトル画面60において表示されるとともに、アシストゲームに移行した後もそのまま表示される。敵方ユーザのHPバー63は、バトル画面60において表示され、かつ、アシスト画面70において表示されてもよい。つまり、敵方ユーザのHPバー63は、バトル画面60において表示されるとともに、アシストゲームに移行した後もそのまま表示される。本変更例において、HPバー63の表示態様は、バトル画面60において表示される場合と、アシスト画面70において表示される場合とで、異なっていてもよい。一例として、HPバー63の表示態様は、バトル画面60において表示される場合と比べて、アシスト画面70において表示される場合の方が、見易くなるとよい。例えば、HPバー63の大きさは、バトル画面60において表示される場合と比べて、アシスト画面70において表示される場合の方が、大きくなるとよい。
【0184】
・HPバー63の表示条件は、アバターが第2状態となる前のバトル画面60で表示される場合と、アバターが第2状態となってからのアシスト画面70で表示される場合とで、異なっていてもよい。一例として、バトル画面60において、HPバー63は、仮想カメラ98の視界領域内にいるアバターであり、かつ、仮想カメラ98から一定距離以内にいるアバターに対してのみ表示される。そして、アバターの状態が第2状態になることで、画面がアシスト画面70に移行した場合に、HPバー63は、仮想カメラ98の視界領域内にいる味方ユーザのアバター、及び敵方ユーザのアバターに対して表示される。
【0185】
また、
図22に示すように、アシスト画面70において、HPバー63は、仮想カメラ98の視界領域内にいる敵方ユーザのアバターに対して表示されるが、味方ユーザに対して表示されなくてもよい。この場合に、味方ユーザのアバターのヒットポイントは、モニタ166において、HPバー63とは別の部分に表示されるHPバー703によって示されてもよい。一例として、HPバー703は、複数の視点変更アイコン702に対応させて表示してもよい。これにより、敵方ユーザのアバターのヒットポイントは、そのアバターがモニタ166に表示された場合に把握可能であるが、味方ユーザのアバターのヒットポイントは、その全部を常に把握可能である。よって、アシストゲームにおいて、ユーザは、補助したほうがよい味方ユーザ、及び、妨害したほうがよい敵方ユーザを把握し易い。つまり、アシストゲームにおける戦略を立てることが容易になる。
【0186】
・
図23に示すように、アシストユニットの配置操作は、バトルゲームにおけるアバターの移動操作と同じ方法、又は似た方法であってもよい。
一例として、端末100のプロセッサ110は、アシストアイコン71がタップ操作された場合に、仮想空間のうちモニタ166の中央に表示されている位置に対して、アシストオブジェクト94を仮配置する。端末100のプロセッサ110は、アシストオブジェト94を仮想空間に仮配置した場合に、レンダリングモジュール104として、取消ボタン706、決定ボタン707、及び回転ボタン708をモニタ166に表示する。端末100のプロセッサ110は、ゲームモジュール101Aとして、取消ボタン706が表示されている部分のタップ操作により、仮配置を取り消す操作がされた場合に、仮配置したアシストオブジェクト94を仮想空間から取り除く。端末100のプロセッサ110は、ゲームモジュール101Aとして、回転ボタン708が表示されている部分のタップ操作により、アシストオブジェト94を回転させる操作がされると、仮配置したアシストオブジェクト94を回転させる。
【0187】
一例として、バトル画面60及びアシスト画面70は、第1仮想スティック710と、第2仮想スティック720と、を含む。バトル画面60において、第1仮想スティック710は、仮想空間におけるアバター81の移動を指示できる。バトル画面60において、第2仮想スティック720は、カメラアングルの変更を指示できる。一例として、仮想カメラ98は、第2仮想スティック720の操作によって、自分のアバター81を視界領域内に収めたまま、当該アバター81の周りを回転させる指示を行うことができる。一方、アシスト画面70において、第1仮想スティック710は、仮想空間に仮配置されたアシストオブジェクト94の移動を指示できる。アシスト画面70において、第2仮想スティック720は、カメラアングルの変更を指示できる。一例として、仮想カメラ98は、第2仮想スティック720の操作によって、アシストオブジェクト94を視界領域内に収めたまま、当該アシストオブジェクト94の周りを回転させる指示を行うことができる。
【0188】
端末100のプロセッサ110は、ゲームモジュール101Aとして、仮配置したアシストオブジェクト94の移動操作を受け付けると、仮想空間でアシストオブジェクト94を移動させる。端末100Cのプロセッサ110は、レンダリングモジュール104として、仮配置したアシストオブジェクト94を中心として、フィールド92Aを俯瞰する位置に仮想カメラ98を追随させる。つまり、一例として、仮配置されたアシストオブジェト94の表示位置は、モニタ166の中央に維持される。なお、上述のように、一例として、バトル画面60において、自分のアバター81の表示位置は、モニタ166の中央に維持される。
【0189】
端末100Cのプロセッサ110は、レンダリングモジュール104として、仮想カメラ98の回転操作を受け付けると、アシストオブジェクト94を中心とした軌道に沿って、仮想カメラ98を回転させる。端末100のプロセッサ110は、レンダリングモジュール104として、移動後の仮想カメラ98の視界領域内に収められる範囲をモニタ166に表示する。
【0190】
参加端末100Cのプロセッサ110は、ゲームモジュール101Aとして、決定ボタン707が表示されている部分のタップ操作により、アシストオブジェト94の配置を決定する操作がされると、仮配置したアシストオブジェクト94の種類と、仮配置したアシストオブジェクト94の位置と、を取得する。そして、ステップS210において、端末100のプロセッサ110は、ゲームモジュール101Aとして、アシストオブジェクト94の種類情報、及び座標情報を含む第2プレイ情報(オブジェクト配置要求)をサーバ200へ送信する。
【0191】
本変更例では、第1ゲーム(バトルゲーム)における操作方法と、第2ゲーム(アシストゲーム)における操作方法とが同じ方法、又は似た方法である。つまり、操作方法は、アバターの状態が第2状態になる前と、アバターの状態が第2状態になった後と、同じ又は似ている。よって、操作方法の違いに起因するユーザの混乱を抑制することができる。
【0192】
・ゲームシステム10は、ユーザが所有するポイントを消費してアシストオブジェクトを配置するように構成されてもよい。仮想空間に配置する際の消費ポイントは、アシストオブジェクトの種類ごとに異なっていてもよく、それらの一部又は全部が同じであってもよい。一例として、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、オブジェクト配置要求(第2プレイ情報)を受信した場合に、その要求で配置が指示されたアシストオブジェクトの種類に基づいて消費ポイントを特定する。プロセッサ210は、特定された消費ポイントに応じて、ユーザが所有するポイントを減少させる。そして、ステップS216において、プロセッサ210は、アシストオブジェクトを仮想空間に配置する。プロセッサ110は、ユーザが所有するポイントが、特定された消費ポイントに満たない場合に、アシストオブジェクトを配置しない。一例として、ユーザが所有するポイントは、時間の経過に伴って増加するとよい。
【0193】
・ゲームシステム10は、アシストオブジェクトが取り除かれるまでの撤去時間T1を短縮できるように構成されてもよい。一例として、サーバ200のプロセッサ210は、ゲームモジュール201Aとして、経過時間の管理に代えて、パラメータ値の一例である耐久値を管理する。サーバ200のプロセッサ210は、時間の経過に応じて耐久値を減少させる。サーバ200のプロセッサ210は、アシストオブジェクトを配置したユーザとは異なる属性のユーザの行動に応じて、当該アシストオブジェクトの耐久値を減少させる。一例として、アシストオブジェクトの耐久値を減少させる行動は、当該アシストオブジェクトに、アバターの攻撃を命中させることである。一例として、アシストオブジェクトの耐久値を減少させる行動は、当該アシストオブジェクトに、所定のアシストオブジェクトの効果を発揮させることである。一例として、所定のアシストオブジェクトは、爆弾オブジェクト94Dであるとよい。
【0194】
ステップS232において、サーバ200のプロセッサ210は、耐久値が0になったアシストオブジェクトを仮想空間から取り除く。端末100のプロセッサ110は、レンダリングモジュール104として、アシストオブジェクトの耐久値を示す画像を、当該アシストオブジェクトに対応付けて表示させてもよい。
【0195】
・複数の端末100は、互いに構成が異なるコンピュータとして実現されてもよい。
・コントロールモジュール101,201が備える1以上のモジュールは、ASIC、PLD、FPGA、MCU等の回路により実現してもよい。
【0196】
・コントロールモジュール101,201が備える1以上のモジュールは、プロセッサを用いるソフトウェアによって実現してもよい。コントロールモジュール101,201の少なくとも1つを備えるコンピュータは、プロセッサ、メモリ、及びストレージを備える。上記プログラム及び各種データは、プロセッサが読み取りできるように、ストレージに記録される。プログラムは、メモリに展開される。そして、プロセッサが上記プログラムをストレージから読み取り、実行することにより、本開示の作用が実現される。ストレージは、既に説明の通り、不揮発性の記憶装置として実現され得る。
【0197】
・プログラムは、このプログラムを伝送可能な任意の伝送媒体(通信ネットワーク、又は放送波等)を介して上記コンピュータに供給されてもよい。
・プログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD-ROM、DVD、MO等)、半導体メモリ(ROM、RAM、フラッシュメモリ等)等の記録媒体に記録してもよい。
【0198】
本開示は以下の実施例を包含する。限定のためでなく理解の補助として実施形態の構成要素の参照符号を付した。
(付記1)コンピュータ(200)に、仮想空間(80)を定義すること(S110)と、端末(100)を操作するプレイヤに対応するプレイヤキャラクタ(80A,80B)を、前記仮想空間に配置すること(S212)と、特定の条件が成立した場合に、前記プレイヤキャラクタの状態を第1状態から第2状態に変更すること(S202)と、前記プレイヤによる第1操作を受け付けた前記端末が送信する第1情報を受信すること(S132)と、受信した前記第1情報に応じて、前記仮想空間で前記プレイヤキャラクタを移動させること(S134)と、前記プレイヤキャラクタの状態が前記第2状態である場合に、前記仮想空間で前記プレイヤキャラクタを移動させることの実行を規制すること(S134)と、前記プレイヤによる第2操作を受け付けた前記端末が送信する第2情報を受信すること(S212)と、前記プレイヤキャラクタの状態が前記第2状態である場合に、受信した前記第2情報に応じて、1以上の特定オブジェクト(94)を前記仮想空間に配置すること(S216)と、を実行させる、プログラム。
【0199】
(付記2)前記仮想空間(80)は、前記プレイヤキャラクタの移動を許容するフィールドを含み、前記コンピュータ(200)に、前記プレイヤキャラクタの状態を前記第1状態から前記第2状態に変更した場合に、前記プレイヤキャラクタを前記フィールドに表示しないことの要求を前記端末に送信すること(S138)、をさらに実行させる、付記1に記載のプログラム。
【0200】
(付記3)前記コンピュータ(200)に、前記プレイヤキャラクタと異なる第1キャラクタ及び第2キャラクタを前記仮想空間に配置すること(S112)と、前記プレイヤキャラクタ、前記第1キャラクタ、及び前記第2キャラクタの各々に対応するパラメータ値を管理すること(S136)と、前記第1キャラクタ、及び前記第2キャラクタのうち、対応する前記パラメータ値が特定値となったキャラクタの状態を前記第1状態から前記第2状態に変更すること(S202)と、をさらに実行させ、前記特定の条件は、前記プレイヤキャラクタに対応する前記パラメータ値が前記特定値となることによって成立し、前記1以上の特定オブジェクト(94)は、第1特定オブジェクト、及び第2特定オブジェクトのうち少なくとも1つを含み、前記第1特定オブジェクトは、少なくとも前記第2キャラクタが通過することを規制するオブジェクトであり、前記第2特定オブジェクトは、少なくとも前記第1キャラクタに対応する前記パラメータ値を回復させることができるオブジェクトである、付記1又は付記2に記載のプログラム。
【0201】
(付記4)前記コンピュータ(200)に、規定数の前記特定オブジェクト(94)が前記仮想空間(80)に配置されている場合に、追加の前記特定オブジェクトを前記仮想空間に配置することの実行を規制すること、をさらに実行させる、付記1~付記3のうち何れか一項に記載のプログラム。
【0202】
(付記5)前記コンピュータ(200)に、前記仮想空間(80)に配置された前記各特定オブジェクト(94)を、当該特定オブジェクトが前記仮想空間に配置されてからの時間が規定時間に達した場合に前記仮想空間から取り除くこと、をさらに実行させる、付記4に記載のプログラム。
【0203】
(付記6)前記コンピュータ(200)に、前記プレイヤキャラクタの状態を前記第1状態から前記第2状態に変更した場合に、前記仮想空間(80)をレンダリングした画像を生成するときの視点を第1視点から第2視点に変更することの要求を、前記端末に送信すること(S204)、をさらに実行させ、前記仮想空間は、前記プレイヤキャラクタの移動を許容するフィールドを含み、前記第1視点は、前記プレイヤキャラクタに対応する視点であり、前記第2視点は、前記フィールドを俯瞰する視点である、付記1~付記5のうち何れか一項に記載のプログラム。
【0204】
(付記7)前記第1状態は、前記仮想空間(80)で前記プレイヤキャラクタを移動させることを含む第1ゲームに参加できる状態であり、前記第2状態は、前記第1ゲームに参加できない状態であって、前記1以上の特定オブジェクトを前記仮想空間に配置することを含む第2ゲームに参加できる状態であり、前記コンピュータに、前記プレイヤキャラクタの状態を前記第1状態から前記第2状態に変更した場合に、前記第2ゲームの開始報知を行うことの要求を、前記端末に送信すること(S204)、をさらに実行させる、付記6に記載のプログラム。
【0205】
(付記8)前記コンピュータ(200)に、前記第2情報を受信した場合に、前記特定オブジェクト(94)の配置を行ったプレイヤの属性を示す情報を報知することの要求を、前記端末に送信すること、をさらに実行させる付記1~付記7のうち何れか一項に記載のプログラム。
【0206】
(付記9)前記仮想空間(90)には、第1属性に対応し、かつ1以上の第1キャラクタを含む第1グループと、第2属性に対応し、かつ1以上の第2キャラクタを含む第2グループと、が設けられ、前記プレイヤの属性は、前記第1属性、又は前記第2属性であり、前記プレイヤキャラクタは、前記プレイヤの属性に応じて前記第1グループ、又は前記第2グループに含まれ、前記特定オブジェクトは、前記プレイヤの属性に応じて異なる視覚効果を伴う、付記8に記載のプログラム。
【0207】
(付記10)コンピュータ(200)に、仮想空間(80)を定義すること(S110)と、端末(100)を操作するプレイヤに対応するプレイヤキャラクタを、前記仮想空間に配置すること(S212)と、特定の条件が成立した場合に、前記プレイヤキャラクタの状態を第1状態から第2状態に変更すること(S202)と、前記プレイヤによる所定の操作を受け付けた前記端末が送信する操作情報を受信すること(S132,S212)と、前記プレイヤキャラクタの状態が前記第1状態である場合に、受信した前記操作情報に応じて、前記仮想空間に第1事象を発生させること(S134,S136)と、前記プレイヤキャラクタの状態が前記第2状態である場合に、受信した前記操作情報に応じて、前記仮想空間に前記第1事象と異なる第2事象を発生させること(S216)と、を実行させる、プログラム。
【0208】
(付記11)付記1~付記10のうち何れか一項に記載のプログラムを記憶した記憶装置(230)と、前記記憶装置が記憶したプログラムを実行するプロセッサ(210)と、を備えるコンピュータ(200)。
【0209】
(付記12)付記11に記載のコンピュータ(200)を備えるシステム(10)。
(付記13)コンピュータ(200)が、仮想空間(80)を定義すること(S110)と、端末(100)を操作するプレイヤに対応するプレイヤキャラクタ(80A,80B)を、前記仮想空間に配置すること(S112)と、特定の条件が成立した場合に、前記プレイヤキャラクタの状態を第1状態から第2状態に変更すること(S202)と、前記プレイヤによる第1操作を受け付けた前記端末が送信する第1情報を受信すること(S132)と、受信した前記第1情報に応じて、前記仮想空間で前記プレイヤキャラクタを移動させること(S134)と、前記プレイヤキャラクタの状態が前記第2状態である場合に、前記仮想空間で前記プレイヤキャラクタを移動させることの実行を規制すること(S134)と、前記プレイヤによる第2操作を受け付けた前記端末が送信する第2情報を受信すること(S212)と、前記プレイヤキャラクタの状態が前記第2状態である場合に、受信した前記第2情報に応じて、1以上の特定オブジェクトを前記仮想空間に配置すること(S216)と、を実行する、方法
本発明がその技術的思想から逸脱しない範囲で他の特有の形態で具体化されてもよいということは当業者にとって明らかであろう。例えば、実施形態(あるいはその1つ又は複数の態様)において説明した部品のうちの一部を省略してもよいし、いくつかの部品を組合せてもよい。本発明の範囲は、添付の請求の範囲を参照して、請求の範囲が権利を与えられる均等物の全範囲と共に確定されるべきである。
【符号の説明】
【0210】
10…ゲームシステム、40…ホーム画面、50…マッチング画面、60…バトル画面、61…HPバー、62…枠線、65…アシスト移行画面、66…開始情報、70…アシスト画面、71…アシストアイコン、71A…アシストアイコン、71C…アシストアイコン、71D…アシストアイコン、75…リザルト画面、80…仮想空間、81…アバター、81A…アバター、81B…アバター、90…ネットワーク、92…地形オブジェクト、92A…フィールド、94…アシストオブジェクト、94A,94A1,94A2…壁オブジェクト、94B,94B1,94B2…木箱オブジェクト、94D…爆弾オブジェクト、98,98A~98C…仮想カメラ、100…端末、101…コントロールモジュール、101A…ゲームモジュール、101B…配信モジュール、101C…視聴モジュール、104…レンダリングモジュール、105…メモリモジュール、106…通信モジュール、107…入出力モジュール、110…プロセッサ、120…メモリ、130…ストレージ、140…通信IF、150…入出力IF、160…マイク、162…スピーカ、164…タッチスクリーン、166…モニタ、167…タッチセンサ、180…通信バス、190…入出力機器、200…サーバ、200A…ゲームサーバ、200B…配信サーバ、201…コントロールモジュール、201A…ゲームモジュール、201B…配信モジュール、205…メモリモジュール、206…通信モジュール、207…入出力モジュール、210…プロセッサ、220…メモリ、230…ストレージ、240…通信IF、250…入出力IF、280…通信バス、401…アバターウィンドウ、404…バトルアイコン、406…キャラクタアイコン、701…アバターウィンドウ、702…視点変更アイコン