JP2023049984A - サーバシステム、プレーヤ端末、及び提供方法 - Google Patents

サーバシステム、プレーヤ端末、及び提供方法 Download PDF

Info

Publication number
JP2023049984A
JP2023049984A JP2021160088A JP2021160088A JP2023049984A JP 2023049984 A JP2023049984 A JP 2023049984A JP 2021160088 A JP2021160088 A JP 2021160088A JP 2021160088 A JP2021160088 A JP 2021160088A JP 2023049984 A JP2023049984 A JP 2023049984A
Authority
JP
Japan
Prior art keywords
player
game
terminal
game play
server system
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.)
Pending
Application number
JP2021160088A
Other languages
English (en)
Inventor
雄志 井上
Takeshi Inoue
壮太 影山
Sota Kageyama
哲規 川ノ上
Tetsunori KAWANOUE
裕介 中村
Yusuke Nakamura
佳整 沖
Yoshinobu Oki
貴士 田中
Takashi Tanaka
宏太郎 薄井
Kotaro Usui
健介 塚中
Kensuke Tsukanaka
旭史 千葉
Asahi Chiba
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.)
Bandai Namco Entertainment Inc
Original Assignee
Bandai Namco Entertainment Inc
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 Bandai Namco Entertainment Inc filed Critical Bandai Namco Entertainment Inc
Priority to JP2021160088A priority Critical patent/JP2023049984A/ja
Publication of JP2023049984A publication Critical patent/JP2023049984A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

【課題】様々な性能のゲームクライアントが共有ゲーム空間で関与状況を通じてマルチプレイするオンラインゲームにおいて、良質なプレイ体験が得られる機会を増やすための新しい技術を提供すること。【解決手段】サーバシステム1100は、各プレーヤがプレーヤ端末1500を用いて共用ゲーム空間8を移動可能なプレーヤキャラクタ4を操作し、マルチプレイによるゲームプレイを楽しむオンラインゲームを提供する。その際、各プレーヤ端末1500のゲームプレイスペックを表す情報を取得し、ゲームプレイを開始又は再開するスタートプレーヤについて、当該スタートプレーヤのプレーヤキャラクタ4の共用ゲーム空間8中のスタート位置を、当該スタートプレーヤのプレーヤ端末1500のゲームプレイスペックに基づいて決定する。【選択図】図4

Description

本発明は、マルチプレイ形式のオンラインゲームを提供するサーバシステム等に関する。
オンラインゲームの代表例としてMMO(Massively Multiplayer Online)ゲームがある。MMOゲームの技術の1つとして、家庭用据置型ゲーム装置や、携帯型ゲーム装置、パソコン、スマートフォンなどの様々なカテゴリーのコンピュータをゲームクライアントとして利用可能とする技術が知られている。
例えば、特許文献1には、ゲームクライアント別に通信品質情報を取得して、通信品質に応じたゲームモードでゲームを進行制御する技術が開示されている。
特開2014-73266号公報
マルチプレイ形式のオンラインゲームの特性として、ゲームのプレイ体験は、例えば、ゲームクライアントが使用する通信回線の通信速度の影響を強く受ける。例えば、高速の通信回線を使用すれば、臨場感のあるリッチなゲームプレイ画像、キャラクタの滑らかな動作、高い応答性、多様な操作性、高い操作自由度、などが実現されるのでプレイ体験の質は高くなる。通信速度が低ければ、それらは叶わずプレイ体験の質は低くなる。
通信回線の通信速度がプレイ体験に与える影響は、非同期型ゲームよりも完全同期型ゲームの方が大きくなる。例えば、高速の通信回線を使用するゲームクライアントのプレーヤキャラクタと、低速の通信回線を使用するゲームクライアントのプレーヤとが遭遇して両者間で行われる完全同期型ゲームプレイ(例えば、エンカウントにより発生する対戦プレイ)は、通信速度の低い回線側に合わせたプレイ体験とならざるを得ない。通信速度が速い側のプレーヤにしてみれば、せっかくの高速な通信速度を活かし切れないままゲームプレイすることになる。高品質な通信回線を使用しているのだから、もっと良質なプレイ体験を享受できるはずなのにそれは叶わない場合が起こり得た。
なお、オンラインゲームを快適にプレイする上でのゲームクライアントの性能指標としては、通信速度の他にも、当該ゲームクライアント自身の通信処理能力や演算処理能力もある。
本発明が解決しようとする課題は、様々なゲームクライアントが共有ゲーム空間で関与状況を通じてマルチプレイを楽しむオンラインゲームにおいて、良質なプレイ体験が得られる機会を増やすための新しい技術を提供すること、である。
上記した課題を解決するための第1の発明は、各プレーヤがプレーヤ端末を用いて共用ゲーム空間を移動可能なプレーヤキャラクタを操作し、マルチプレイによるゲームプレイを楽しむオンラインゲームを提供するサーバシステムであって、前記プレーヤ端末には、ゲームプレイスペックが異なる端末があり、
各プレーヤのプレーヤ端末の前記ゲームプレイスペックを表す情報を取得するゲームプレイスペック情報取得手段(例えば、図1の制御基板1150、図9のサーバ処理部200s、ゲーム管理部210、ゲームプレイスペック情報取得部214、図15のゲームプレイスペック情報605、図18のステップS12)と、前記ゲームプレイを開始又は再開するスタートプレーヤについて、当該スタートプレーヤのプレーヤキャラクタの前記共用ゲーム空間中のスタート位置を、当該スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに基づいて決定するスタート位置決定手段(例えば、図1の制御基板1150、図9のサーバ処理部200s、ゲーム管理部210、スタート位置決定部230、図16の位置座標734、図18のステップS22)と、を備えるサーバシステムである。
第1の発明によれば、サーバシステムは、共用ゲーム空間にプレーヤキャラクタを配置するスタート位置を、各プレーヤキャラクタのプレーヤ端末のゲームプレイスペックに応じて決定できる。ゲームプレイスペックは、例えば、通信処理能力、演算処理能力、搭載するOS(Operating System)の種類、及び、サーバシステムとの通信速度、のうちの何れかとすることができる。よって、無作為にスタート位置を決定する場合よりも、ゲームプレイスペックが同じ又は近いプレーヤ端末のプレーヤキャラクタが遭遇する可能性が上がる。例えば、ゲームプレイスペックが高いプレーヤ端末のプレーヤは、同じようにゲームプレイスペックが高い他プレーヤ端末のプレーヤと、その高いスペックに応じた良質なプレイ体験が得られる機会が増える。
第2の発明は、前記ゲームプレイスペック情報取得手段が、前記ゲームプレイスペックを表す情報として、前記プレーヤ端末の機種の情報を取得する機種情報取得手段(例えば、図9の機種情報取得部216)、を有し、前記スタート位置決定手段は、前記スタートプレーヤのプレーヤ端末の機種に基づいて、前記スタート位置を決定する、第1の発明のサーバシステムである。
第2の発明によれば、サーバシステムは、プレーヤ端末の機種に基づいてスタート位置を決定できる。
第3の発明は、前記ゲームプレイスペック情報取得手段が、前記ゲームプレイスペックを表す情報として、前記プレーヤ端末の通信速度に係る通信状況情報を取得する通信状況情報取得手段(例えば、図9の通信状況情報取得部218)を有し、前記スタート位置決定手段は、前記スタートプレーヤのプレーヤ端末の前記通信状況情報に基づいて、前記スタート位置を決定する、第1又は第2の発明のサーバシステムである。
「通信速度に係る通信状況情報」は、通信速度に影響を与える通信状況を表す情報である。例えば、通信速度は勿論のこと、遅延時間、ジッター(Jitter)、RTT(Round Trip delay Time)、パケットロス率、などがこれに該当する。
第3の発明によれば、サーバシステムは、プレーヤ端末の通信状況情報に基づいてスタート位置を決定できる。
第4の発明は、前記プレーヤ端末には、前記ゲームプレイスペックが所与の相互相応条件を満たさない第1のプレーヤ端末と第2のプレーヤ端末とが含まれ、前記スタート位置決定手段は、前記スタートプレーヤのプレーヤ端末が前記第1のプレーヤ端末との間で前記相互相応条件を満たし、且つ、前記第2のプレーヤ端末との間で前記相互相応条件を満たさない場合に、前記スタート位置を、前記第2のプレーヤ端末のプレーヤキャラクタよりも前記第1のプレーヤ端末のプレーヤキャラクタに近い位置に決定する(例えば、図4の相対距離L1f,図7の相対距離L2e、相対距離L2f)、第1から第3の何れかの発明のサーバシステムである。
「ゲームプレイスペックが所与の相互相応条件を満たす」とは、ゲームスペックが同一である意味と、ゲームスペックが同程度である意味と、ゲームプレイスペックの違いがプレイ体験の大きな差が生じさせない程度の意味と、の何れの場合も含む。
第4の発明によれば、サーバシステムは、ゲームプレイスペックが所与の相互相応条件を満たすプレーヤ端末のプレーヤキャラクタ同士を、相互相応条件を満たさないプレーヤ端末のプレーヤキャラクタよりも相対的に近い位置となるように、スタート位置を決定できる。相互相応条件を満たすプレーヤ端末のプレーヤキャラクタが遭遇する可能性も上がる。ゲームプレイスペックが高いプレーヤ端末のプレーヤは、同じようにゲームプレイスペックが高い他プレーヤ端末のプレーヤと、その高いスペックに応じた良質なプレイ体験が得られる機会が増える。
第5の発明は、前記ゲームプレイスペックに基づく適合エリアを前記共用ゲーム空間中に設定する適合エリア設定手段(例えば、図1の制御基板1150、図9のサーバ処理部200s、ゲーム管理部210、適合エリア設定部222、図16の適合エリア設定データ710、図18のステップS18)、を更に備え、前記スタート位置決定手段は、前記スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに適合する前記適合エリアを選択し、選択した前記適合エリアに前記スタート位置を決定する、第1から第4の何れかの発明のサーバシステムである。
第5の発明によれば、サーバシステムは、スタートプレーヤのプレーヤ端末のゲームプレイスペックに適合する適合エリア内に、当該スタートプレーヤのスタート位置を決定できる。例えば、ゲームプレイスペックが高いプレーヤ端末のプレーヤキャラクタについて、特定の適合エリアをスタート位置に決定することで、同じようにゲームプレイスペックが高い他プレーヤ端末のプレーヤキャラクタと遭遇する可能性を高めることができる。
第6の発明は、前記適合エリア設定手段が、前記適合エリアの設定位置をゲーム進行状況に基づいて可変に設定する、第5の発明のサーバシステムである。
第6の発明によれば、同じゲームプレイスペックのプレーヤ端末であっても、ゲーム進行状況に応じてスタート位置が変化するので、スタート位置を多様にしてゲームの興趣を高く維持できる。
第7の発明は、前記適合エリア設定手段が、所与の相互相応条件を満たさない異なるゲームプレイスペックそれぞれに応じた前記適合エリアを設定する、第5又は第6の発明のサーバシステムである。
第7の発明によれば、サーバシステムは、ゲームプレイスペックが相互相応条件を満たさないプレーヤ端末に係るスタート位置を、それぞれ異なる適合エリアに設定できる。例えば、ゲームプレイスペックが高いプレーヤ端末のプレーヤキャラクタが、ゲームプレイスペックが低いプレーヤ端末のプレーヤキャラクタと遭遇する可能性が低くなる。逆説的には、ゲームプレイスペックが高いプレーヤ端末のプレーヤキャラクタが、同じくゲームプレイスペックが高いプレーヤ端末のプレーヤキャラクタと遭遇する可能性が高くなる。
第8の発明は、前記スタート位置決定手段が、前記スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに適合する前記適合エリアのうち、前記スタート位置として希望するエリア又は当該エリア中の場所を前記スタートプレーヤの操作入力に基づいて受け付ける希望受付手段(例えば、図5の希望エリア受付画面W5、図9の希望受付部232、図18のステップS20)を有する、第5から第7の何れかの発明のサーバシステムである。
第8の発明によれば、サーバシステムは、プレーヤの希望に応じてスタート位置を決定できる。
第9の発明は、前記適合エリア設定手段が、ゲーム開始前の前記プレーヤの人数又は前記プレーヤ端末の台数を前記ゲームプレイスペックに基づいて仕分けした統計値を用いて、前記適合エリアの数、位置、及び大きさのうちの何れかを変更して前記適合エリアを設定する(例えば、図12の適合エリア変更パターン定義データ530、図18のステップS18)、第5から第8の何れかの発明のサーバシステムである。
第9の発明によれば、サーバシステムは、ゲームに参加するプレーヤ端末に関して、高スペックから低スペックまでの仕分け別の台数に応じて適合エリアを変更できる。例えば、高スペックなプレーヤ端末が相対的に多いケースでは、高スペックなプレーヤ端末が適合する適合エリアの数を増やすなどして、スタート位置の分布を適当な密度に維持することが可能になる。
第10の発明は、前記適合エリア設定手段が、ゲームプレイ中の前記プレーヤの人数又は前記プレーヤ端末の台数を前記ゲームプレイスペックに基づいて仕分けした統計値を用いて、前記適合エリアの数、位置、及び大きさのうちの何れかを変更して前記適合エリアを設定する、第5から第8の何れかの発明のサーバシステムである。
第10の発明によれば、サーバシステムは、適合エリアの数、位置、及び大きさのうちの何れかを変更して適合エリアを設定できる。
第11の発明は、前記ゲームプレイスペックが所与の相互相応条件を満たす前記プレーヤ端末の前記プレーヤキャラクタ(以下、「相互相応端末キャラクタ」という)同士が所与の接近条件を満たした場合に、前記相互相応端末キャラクタを対象とする所与のイベントを発動させるイベント制御手段(例えば、図1の制御基板1150、図9のサーバ処理部200s、ゲーム管理部210、イベント制御部236、図13のイベント初期設定データ550、図19のステップS60からステップS64)、を更に備える第1から第10の何れかの発明のサーバシステムである。
第11の発明によれば、サーバシステムは、相互相応端末キャラクタを対象とする所与のイベントを発動できる。例えば、高スペックなプレーヤ端末が相対的に多いケースでは、高スペックを活かすようなイベントを発動させてプレイ体験の質を向上させることができる。
第12の発明は、前記イベント制御手段が、前記接近条件を満たす前記相互相応端末キャラクタの数に基づいて、前記イベントを発動させる、第11の発明のサーバシステムである。
第12の発明によれば、サーバシステムは、相互相応端末キャラクタの数に応じてイベントの発動を制御することで、イベントに係る多様性を向上させ、プレイ体験の質を向上できる。
第13の発明は、前記プレーヤ端末に、当該プレーヤ端末以外のプレーヤ端末の前記ゲームプレイスペックを示す情報を表示させる制御を行うスペック情報表示制御手段(例えば、図1の制御基板1150、図6のスペック表示40、図9のサーバ処理部200s、ゲーム管理部210、スペック情報表示制御部238、図18のステップS44)、を更に備える第1から第12の何れかの発明のサーバシステムである。
第13の発明によれば、プレーヤ同士が互いのプレーヤ端末のゲームプレイスペックを知ることができる。
第14の発明は、前記プレーヤ端末に、前記ゲームプレイスペックに基づく前記プレーヤキャラクタの前記共用ゲーム空間における分布を示す分布情報を表示させる制御を行う分布情報表示制御手段(例えば、図1の制御基板1150、図6の分布情報表示30、図9のサーバ処理部200s、ゲーム管理部210、分布情報表示制御部240、図16の分布情報750、図18のステップS44)、を更に備える第1から第13の何れかの発明のサーバシステムである。
第14の発明によれば、例えば、プレーヤは、分布情報を参考にして、自分のプレーヤキャラクタの移動先について、どのようなゲームプレイスペックのプレーヤ端末のプレーヤキャラクタと遭遇させるかを考えてプレイすることができる。
第15の発明は、各プレーヤがプレーヤ端末を用いて共用ゲーム空間を移動可能なプレーヤキャラクタを操作し、マルチプレイによるゲームプレイを楽しむオンラインゲームを提供するサーバシステムと、前記プレーヤ端末とが通信接続されて構成されるゲームシステムにおける前記プレーヤ端末であって、前記プレーヤ端末には、ゲームプレイスペックが異なる端末があり、前記サーバシステムは、各プレーヤのプレーヤ端末の前記ゲームプレイスペックを表す情報を取得するゲームプレイスペック情報取得手段と、前記ゲームプレイを開始又は再開するスタートプレーヤについて、当該スタートプレーヤのプレーヤキャラクタの前記共用ゲーム空間中のスタート位置を、当該スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに基づいて決定するスタート位置決定手段と、を備え、当該プレーヤ端末のキャラクタの前記共用ゲーム空間中のスタート位置を、前記サーバシステムの前記スタート位置決定手段により決定されたスタート位置としてゲームプレイを開始又は再開する、プレーヤ端末である。
第15の発明によれば、第1の発明と同様の効果をもたらすプレーヤ端末を実現できる。
第16の発明は、各プレーヤがプレーヤ端末を用いて共用ゲーム空間を移動可能なプレーヤキャラクタを操作し、マルチプレイによるゲームプレイを楽しむオンラインゲームをコンピュータシステムが提供する提供方法であって、前記プレーヤ端末には、ゲームプレイスペックが異なる端末があり、各プレーヤのプレーヤ端末の前記ゲームプレイスペックを表す情報を取得するゲームプレイスペック情報取得ステップと、前記ゲームプレイを開始又は再開するスタートプレーヤについて、当該スタートプレーヤのプレーヤキャラクタの前記共用ゲーム空間中のスタート位置を、当該スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに基づいて決定するスタート位置決定ステップと、を含む提供方法である。
第16の発明によれば、第1の発明と同様の効果をもたらす提供方法を実現できる。
ゲームシステムの構成例を示す図。 プレーヤ端末の性能評価について説明するための図。 オンラインゲームについて説明するための図。 スタート位置の決定について説明するための図。 希望エリア受付画面の表示の一例を示す図。 分布情報及びスペック情報の提供について説明するための図。 ゲームプレイを再開する場合のスタート位置の決定について説明するための図。 ゲーム進行状況に基づくスタート位置の決定について説明するための図。 サーバシステムの機能構成例を示す機能ブロック図。 サーバ記憶部が記憶するプログラムやデータの例を示す図。 適合エリア初期設定データのデータ構成例を示す図。 適合エリア変更パターン定義データのデータ構成例を示す図。 イベント初期設定データのデータ構成例を示す図。 端末レベル定義データのデータ構成例を示す図。 ユーザ登録データのデータ構成例を示す図。 プレイデータのデータ構成例を示す図。 プレーヤ端末の機能構成例を示す機能ブロック図 サーバシステムが実行する処理の流れを説明するためのフローチャート。 図18より続くフローチャート
以下、本発明の実施形態の例を説明するが、本発明を適用可能な形態が以下の実施形態に限られないことは勿論である。
図1は、ゲームシステムの構成例を示す図である。
ゲームシステム1000は、サーバシステム1100と、サーバシステム1100と通信可能な各プレーヤ別のプレーヤ端末1500(1500a,1500b,…)とを具備し、プレーヤ端末1500をマンマシンインターフェース(man machine interface:MMIF、以下適宜「MMIF」という)としてオンラインゲームを実現するためのシステムである。図1では、プレーヤ端末1500を3台のみ描いているが、実際のシステム運用においては、プレーヤ端末1500の台数は問われない。
ゲームシステム1000では、サーバシステム1100とプレーヤ端末1500とは、ネットワーク9を介してデータ通信が可能であり、プレーヤ端末1500同士もネットワーク9を介してデータ通信が可能である。
ネットワーク9は、データ通信が可能な通信路を意味する。すなわち、ネットワーク9とは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
サーバシステム1100は、例えば、本体装置、キーボード、タッチパネル、ストレージを有し、本体装置に制御基板1150を搭載するコンピュータシステムである。
制御基板1150には、CPU(Central Processing Unit)1151やGPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1152、通信装置1153、が搭載されている。なお、制御基板1150の一部又は全部は、ASIC(Application Specific Integrated Circuit)や、FPGA(Field-Programmable Gate Array)、SoC(System on a Chip)により実現するとしてもよい。
そして、サーバシステム1100は、制御基板1150が所定のプログラム及びデータに基づいて演算処理することにより、ユーザ登録等に係る情報を管理するユーザ管理機能と、ユーザにオンラインゲームをプレイさせるゲーム管理機能と、を実現する。
なお、サーバシステム1100を、1台のサーバ装置であるかのように描いているが、協調する複数の装置で実現する構成であってもよい。例えば、サーバシステム1100は、各機能を分担する複数のブレードサーバを搭載して相互に内部バスを介してデータ通信可能に接続した構成であっても良い。また、サーバシステム1100を構成するハードウェアの設置場所は問わない。離れた場所に設置された独立した複数のサーバを、ネットワーク9を介してデータ通信させることで、全体としてサーバシステム1100として機能させる構成であっても良い。
プレーヤ端末1500(1500a,1500b,…)は、ユーザがゲームシステム1000を利用してゲームプレイするために使用するコンピュータシステムであって、ネットワーク9を介してサーバシステム1100や他のプレーヤ端末1500にアクセスする電子装置(電子機器)である。すなわち、プレーヤ端末1500は、ゲームシステム1000におけるMMIFの機能を担っている。
プレーヤ端末1500は、操作入力デバイス(例えば、キーボード、タッチパネル、ゲームコントローラ、マウスなど)と、画像表示デバイス(例えば、ビデオモニタ、タッチパネル、ヘッドマウントディスプレイなど)と、制御基板1550と、を備える。
制御基板1550は、CPU1551や、GPU,DSPなどの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1552、ネットワーク9に接続する通信モジュール1553、などを搭載する。制御基板1550に搭載されているこれらの要素は、バス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。制御基板1550の一部又は全部をASICやFPGA、SoCにて構成してもよい。そして、制御基板1550は、プレーヤ端末としての機能を実現させるためのプログラムや各種データをICメモリ1552に記憶する。
本実施形態では、プレーヤ端末1500はプログラムや各種の設定データをサーバシステム1100からダウンロードする構成としているが、別途入手したメモリカードなどの記憶媒体から読み出す構成としてもよい。
プレーヤ端末1500の形態は、コンピュータシステムであれば問わない。例えば、スマートフォン、スマートウォッチなどのウェアラブルコンピュータ、携帯型ゲーム装置、家庭用据置型ゲーム装置、タブレット型コンピュータ、パソコン、業務用ゲーム装置、などでもよい。スマートフォンと当該スマートフォンに通信接続されたスマートウォッチとの組み合わせ、といった複数の電子機器が通信可能に接続することで1つの機能を果たす場合には、それら複数の電子機器を1つのプレーヤ端末1500とみなすことができる。
実際の運用においては、プレーヤ端末1500(1500a,1500b,…)は、スマートフォンや家庭用ゲーム装置、パソコンなど様々なカテゴリーの機器が混在し、機種も様々に混在する。当然、ハードウェアスペック(CPUのスペック、搭載メモリ容量、グラフィックボードのスペック、通信モジュールのスペック、バスのスペック、ディスプレイのスペック、通信回線のスペック、など)、ソフトウェアスペック(OSのスペック、通信規格、など)も様々になる。プレーヤ端末1500の単体としての演算処理能力や通信処理能力は、ハードウェアスペックとソフトウェアスペックとによって決まる。
更に、各プレーヤ端末1500とサーバシステム1100とを通信接続するネットワーク9の実情、いわゆる通信環境も様々となる。例えば、無線接続した携帯電話網の基地局を介して接続しているのか、有線接続しているのか、遅延(伝送遅延・伝播遅延などを含む)の程度、帯域幅、パケットロスの程度、などの様々な通信品質に係る要素が各プレーヤ端末1500に応じて異なる。結果として各プレーヤ端末1500がサーバシステム1100と通信する際の実効通信速度は様々になる。
各プレーヤ端末1500にてゲームプレイを実行する際に影響するこれらの要因(当該プレーヤ端末1500の通信処理能力、当該プレーヤ端末1500の演算処理能力、及び、当該プレーヤ端末1500とサーバシステムとの間の通信速度、など)を総括して「ゲームプレイスペック」と呼称する。
すなわち「ゲームプレイスペック」は、ハードウェアスペック(CPUのスペック、搭載メモリ容量、グラフィックボードのスペック、通信モジュールのスペック、バスのスペック、ディスプレイのスペックなど)、ソフトウェアスペック(OSのスペック、通信規格、など)、回線速度や回線種類、などのことである。
各プレーヤ端末1500のゲームプレイスペックとされる情報は、サーバシステム1100がゲーム開始前(例えばログイン時)に取得して保存することとする。ゲームプレイスペックのうち、プレーヤ端末1500のハードウェア・ソフトウェアのスペックについては、その機種やOSバージョンに応じたリモートでのシステム情報収集機能を用いて取得することができる。また、通信速度は、ダミーデータの送受信テストを行って実測することができる。また、保存しているゲームプレイスペックを適宜更新するために、ログインしているプレーヤ端末1500から周期的に最新のゲームプレイスペックを取得して更新することとしてもよい。
図2は、ゲームプレイスペックに基づくプレーヤ端末1500の性能評価について説明するための図である。
サーバシステム1100は、各プレーヤ端末1500(1500a,1500b,…)を、ぞれぞれのゲームプレイスペックに基づいて、どの程度のプレイ体験を実現し得る環境にあるかを総合的に評価し、各プレーヤ端末1500に「端末レベル」を設定する。端末レベルが同じであれば、そのプレーヤ端末1500はゲームプレイスペックの詳細では異なるかもしれないが、同じ程度のプレイ体験を実現し得る環境にあると見なされる。端末レベルが同じであることを「相互相応」と呼称する。逆説的に、同じ端末レベルであると見なされるゲームプレイスペックの範囲が、相互相応と見なすために満たすべき「相互相応条件」となる。
なお、図2の例では、端末レベルを「Lv1」から「Lv4」の4段階で例示しているが、端末レベルは複数であればその数は問わない。また、想定されるプレーヤ端末1500として想定されるコンピュータシステムの構成や、ゲームの内容によっては、端末レベルが違っていても隣接するレベルであれば相互相応と見なす構成も可能である。
図3は、ゲームシステム1000で提供されるオンラインゲームの例について説明するための図である。ゲームシステム1000で提供されるオンラインゲームは、バトルロワイヤル形式の遭遇戦をテーマとしたMMOゲームである。
ユーザは、プレーヤ端末1500を使ってサーバシステム1100へのアクセス或いはサーバシステム1100が管理する所定のウェブサイトへのアクセスを行い、所定のユーザ登録手続をしてプレーヤとなる資格を得る。そして、登録時に設定した固有のユーザアカウント(サインネーム)を用いて所定のサインイン手続を経ることで、ユーザのプレーヤ端末1500はゲームシステム1000に組み込まれて、システムオンライン状態となる。また、所定のサインアウト手続を経ることで、当該システムから脱退し、システムオフラインとなる。そして、システムオンライン状態において、ユーザは所定のゲームログイン(以下、ログイン)を行うことでオンラインゲームがプレイ可能になる。なお、システムオンラインとなることで自動的にログインとなる形態であってもよい。
各プレーヤ端末1500(1500a,1500b,…)には、それぞれプレーヤキャラクタ4(4a,4b,…)が割り当てられている。プレーヤキャラクタ4は、NPC(non player character)や、ゲーム世界の構造を担う背景オブジェクトとともに、1つの共用ゲーム空間8の中に配置される。
具体的には、共用ゲーム空間8は仮想3次元空間であって、共用ゲーム空間8には、各種オブジェクトが配置されており、当該オブジェクトの動作制御に伴って共用ゲーム空間8内の各種オブジェクトの位置等が更新される。共用ゲーム空間8に配置されている各オブジェクトの移動や動作、ヒット判定などのゲーム進行は、サーバシステム1100により非同期型ゲームとして管理される。
各プレーヤは、ゲーム開始前に、自身のプレーヤキャラクタ4をカスタマイズすることができる。具体的には、プレーヤは、幾つかの基本的なキャラクタタイプのなかから何れかをベースとして選択し、自分が好む戦い方に合うように適当な装備を与えてカスタマイズすることができる。プレーヤは、プレーヤ端末1500に表示される共用ゲーム空間8を俯瞰する視点によるゲームプレイ画像を見ながらプレイを始める。俯瞰視が可能な範囲は、共用ゲーム空間8の全体としてもよいし、プレーヤキャラクタ4を基準とした限定範囲のみを俯瞰視が可能としてもよい。
各プレーヤ端末1500にて表示させるゲームプレイ画像は、サーバシステム1100が生成する。サーバシステム1100は、共用ゲーム空間8に各プレーヤ端末1500に対応する視点カメラを配置し、当該視点カメラから見た共用ゲーム空間8の様子をレンダリングして、ゲーム空間画像を作成する。そして、ゲーム空間画像に各種の追加表示(例えば、プレーヤキャラクタ4のステータス表示、プレイ成績の表示、など)を合成して、ゲームプレイ画像を生成する。そして、ゲームプレイ画像のデータを「当該プレーヤ端末におけるマルチプレイに係るMMIFを実現するためのMMIF情報」としてプレーヤ端末1500へ送信・提供する。プレーヤ端末1500は当該データを受信し、これを表示する。
プレーヤは、自分のプレーヤ端末1500にて表示されるゲームプレイ画像を見ながら、自分のプレーヤキャラクタ4を操作して移動させる。そして、自分のプレーヤキャラクタ4を他プレーヤキャラクタに接近させて戦闘に持ち込み、生き残りを目指してプレイする。共用ゲーム空間8で遭遇したプレーヤキャラクタ4同士の戦闘は、当該オンラインゲームにおけるプレイ要素の核心的部分の1つであり、当事者であるプレーヤにとっては、相互に関与してプレイ成績やゲーム体験に影響を与える重要な場面である。
サーバシステム1100は、共用ゲーム空間8において、近接する複数のプレーヤキャラクタ4が所与の関与状況判定条件を満たすと、該当するプレーヤキャラクタ4が「関与状況になった」と見なす。つまり、関与状況になったこと、すなわち関与状況の発生を検出する。図3の例では、プレーヤキャラクタ4bとプレーヤキャラクタ4eとが関与状況になっている。
「関与状況」は、複数のプレーヤキャラクタ4が相互に関与し、ゲーム進行やプレイ成績に大きな影響を与える状況である。
「関与状況判定条件」は、第1のプレーヤキャラクと第2のプレーヤキャラクタとが共用ゲーム空間8における所与の遭遇条件を満たすことなど、ゲーム内容に応じて適宜設定可能である。本実施形態では、「何れかのプレーヤキャラクタの攻撃可能範囲に他プレーヤキャラクタが入った」「ロックオンした(攻撃照準の自動追尾対象に設定した)」としてもよい。更に、一方又は両方のプレーヤによる「交戦開始承認がなされた」ことを加えても良い。
以降、関与状況になったプレーヤキャラクタ4を「関与キャラクタ」と呼称し、関与キャラクタの操作に用いられているプレーヤ端末1500を「関与端末」と呼称する。また、関与状況になってから関与状況が終了するまでのゲームプレイを「関与状況プレイ」と呼称する。
サーバシステム1100は、関与状況の発生を検出すると、関与状況プレイのための特別ゲーム空間を作成し、共用ゲーム空間8でのゲーム進行と並行して、関与状況プレイを完全同期型ゲームとして進行制御する。特別ゲーム空間は、共用ゲーム空間8内に設定される部分的な空間である。関与端末にて表示される関与状況プレイのゲームプレイ画像は、この特別ゲーム空間に基づいて作成される。
具体的には、特別ゲーム空間は、検知された関与状況に係る代表点(例えば、関与キャラクタ同士の中間地点)を基準位置として、共用ゲーム空間8中の限定範囲をコピーした空間として作成される。そして、特別ゲーム空間には、プレーヤキャラクタ4としては関与キャラクタだけが配置され、関与状況キャラクタ以外のプレーヤキャラクタ4は配置されない。言い換えると、関与キャラクタとなったN体(N≧2)のキャラクタ以外のプレーヤキャラクタ4は、特別ゲーム空間10への進入が抑止される。
そして、関与端末は、関与状況の発生を境にして、共用ゲーム空間8に基づいて作成されたゲームプレイ画像の表示から、特別ゲーム空間に基づいて作成されたゲーム空間画像を用いたゲームプレイ画像の表示へ切り換わる。
関与状況プレイは、完全同期型の対戦アクションゲームとなる。遠距離攻撃及び近距離攻撃が入り乱れた格闘ゲームであるといってもよい。当然、関与状況プレイにおけるプレイ体験の質は、関与端末のゲームプレイスペックの影響を受ける。
例えば、その関与状況プレイに係る全ての関与端末の端末レベルが「Lv4」や「Lv3」のように比較的高スペックであれば、当該関与状況プレイのプレイ体験は高品質で快適なものとなるであろう。遅延も少なく、高品質なゲームプレイ画像も滑らかに動き、攻撃の当たり判定などもゲームプレイ画像の見た目と完全に一致するであろう。
しかし、その関与状況プレイに係る全ての関与端末の端末レベルが異なる場合、例えば一方が「Lv4」のように比較的高スペックだが、他方が「Lv2」や「Lv1」のように比較的低スペックであれば、低スペックな関与端末に足を引っ張られる格好で、当該関与状況プレイのプレイ体験の質も快適さも下がる。高スペックな関与端末のプレーヤにしてみれば、せっかく高スペックなプレーヤ端末で高速な通信回線を用意してゲームに臨んでいるのに、そのスペックを活かし切れないプレイ体験しか享受できない。
ここで「高スペックのプレーヤ端末を使うプレーヤは、そのスペックを存分に活かしたプレイ体験を得るには、同じように高スペックのプレーヤ端末のプレーヤと関与状況プレイをする必要がある」という観点から、従来のMMOゲームを振り返ってみる。従来のMMOゲームは、プレーヤキャラクタ4の共用ゲーム空間8への配置はランダムであった。つまり、ゲームプレイスペックに関わらず、プレーヤキャラクタが何処に配置されるかは無作為に決まっていた。つまり、従来のMMOゲームにおいては、高スペックなプレーヤ端末のプレーヤが、同じような高スペックのプレーヤ端末のプレーヤと共に関与状況プレイを楽しむことができたとしても、それは、偶然の産物でしかなかった。
図4は、ゲームプレイを開始するスタートプレーヤのプレーヤキャラクタに関して、共用ゲーム空間8中のスタート位置をどのようにして決定するかを説明するための図である。
サーバシステム1100は、共用ゲーム空間8に複数の適合エリアAx(A01,A02,…)を設定する。各適合エリアAxには、当該エリア内にスタート位置を設定可能なプレーヤ端末1500の端末レベル(以下、「適合端末レベル」という)が設定されている。
例えば、図4の例では、共用ゲーム空間8の左上部に割り当てられた適合エリアA01,A02,A07,A08,A13(薄い網掛けされた矩形範囲)には、適合端末レベルとして「Lv1」又は「Lv2」が設定されている。よって、「Lv3」「Lv4」のプレーヤ端末1500のプレーヤキャラクタ4のスタート位置は、これらの適合エリア内に配置・設定できない。
また、図4の例では、共用ゲーム空間8の左右中央に割り当てられた適合エリアA03,A04,A09,A10,A15,A16,A20,A21,A22(白抜きされた矩形範囲)には、適合端末レベルとして「Lv3」が設定されている。それ以外の端末レベルのプレーヤ端末1500のプレーヤキャラクタ4のスタート位置は、これらの適合エリア内に配置できない。
そして、共用ゲーム空間8の右側に割り当てられた適合エリアA06,A12,A17,A18,A23,A24(やや濃いめに網掛けされた矩形範囲)には、適合端末レベルとして「Lv4」が設定されている。よって、それ以外の端末レベルのプレーヤ端末1500のプレーヤキャラクタ4のスタート位置は、これらの適合エリア内に配置・設定できない。
また、斜線が施された矩形範囲の適合エリアA05,A11,A14,A19は、適合端末レベルとして「なし」が設定されており、どの端末レベルのプレーヤ端末1500のプレーヤキャラクタ4のスタート位置も、これらの適合エリア内に設定できない。
適合端末レベルを含む適合エリアAxに係る各種の設定は、固定ではなく、サーバシステム1100が、ゲーム進行状況に応じて変更し設定する。例えば、サーバシステム1100は、ゲーム開始前には、端末レベル別に仕分けしてプレーヤ端末1500の台数を統計し、端末レベルの台数の比率と、当該端末レベルが適合端末レベルに設定された適合エリアAxの数の比率とを合わせるように、適合端末レベルの配分を変更/設定する。適合端末レベルの配分の変更は、言い換えれば、端末レベルに適合する適合エリアAxの共用ゲーム空間8における設定位置を変更しているとも言える。
サーバシステム1100は、ゲームプレイを開始するスタートプレーヤのプレーヤキャラクタの共用ゲーム空間8中のスタート位置を、当該スタートプレーヤのプレーヤ端末1500の端末レベルが適合する適合エリアAxの中に設定する。
具体的には、スタートプレーヤのプレーヤ端末1500の端末レベルが適合する適合エリアAxを抽出する。そして、図5に示すように、当該スタートプレーヤのプレーヤ端末1500にて、希望エリア受付画面W5を表示させ、抽出された適合エリアAxのうちの何れかにスタート位置を配置する希望があるかの受け付けをする。因みに、図5の例は、端末レベル「Lv3」のプレーヤ端末1500j向けを想定した画面の例を示している。希望エリア受付画面W5では、共用ゲーム空間8の全域マップ20内に「選択候補エリア」が提示される。図5の例では、複数の白抜き矩形が選択候補エリアを示している。プレーヤは、自身のプレーヤキャラクタ4のスタート位置を配置したい適合エリアAxを、選択候補エリアの中からタッチして希望エリアを選択する。希望エリアが無いプレーヤは、おまかせアイコン22をタッチ操作して、希望エリアが無い旨を申告する。
サーバシステム1100は、希望エリアがあるスタートプレーヤのプレーヤキャラクタ4のスタート位置を、希望エリア内に設定する。一方、希望エリアが無いスタートプレーヤのプレーヤキャラクタ4のスタート位置を、抽出された適合する適合エリアAxの中からランダムに選択した適合エリアAx内に設定する。
スタート位置の決定については、更にゲームプレイスペックのスペック値の差が考慮される。具体的には、同じ適合する適合エリアAx内における各スタートプレーヤのプレーヤキャラクタ間の相対距離L1x(図4の例では、Lv1及びLv2用の適合エリア内における相対距離L1x(L1f,L1a)、Lv3用の適合エリア内における相対距離L1x(L1g,L1j))は、当該適合エリア内に配置される最も低スペックなプレーヤ端末(図4の例では、Lv1及びLv2用の適合エリア内ではプレーヤ端末1500h、Lv3用の適合エリア内ではプレーヤ端末1500c)とのスペック値の差が大きいほど相対距離L1xが大きくなるように決定される。「スペック値」は、例えば、通信回線の実行通信速度、CPUクロック数、搭載メモリ容量、などを用いることができる。実行通信速度を用いるのが好適である。
なお、同じ適合する適合エリアAx内に配置されるプレーヤキャラクタ4が2体以下の場合には、こうした相対距離L1xの設定の対象外とすることができる。
こうしてスタート位置を決定することにより、サーバシステム1100は、ゲームプレイスペックが同じか、或いは、近似するプレーヤ端末1500のプレーヤキャラクタ4を、共用ゲーム空間8内において、ゲームプレイスペックが離れたプレーヤ端末1500のプレーヤキャラクタ4よりも、互いが近くなるように集めて配置することができる。従って、ゲームプレイが開始されると、各プレーヤは、自身のプレーヤ端末1500のゲームプレイスペックと同じ、または、近似するプレーヤ端末1500のプレーヤとの関与状況プレイをする可能性が従来よりも各段に上がることになる。高スペックな関与端末のプレーヤは、ゲーム開始後の第1回目の関与状況プレイから、そのスペックを活かした高品質で快適なプレイ体験を堪能できる可能性が高くなる。
勿論、バトルロワイヤル形式の対戦アクションゲームなので、高スペックなプレーヤ端末のプレーヤも、ゲームの進み具合によってはやがて低スペックなプレーヤ端末のプレーヤ端末と、関与状況プレイをすることになるであろう。しかし、その頃にはプレーヤキャラクタ4の生き残り数も少なくなり、サーバシステム1100の演算処理負荷もゲーム開始当初よりも少なくなっている。従って、高スペックなプレーヤ端末1500と、低スペックなプレーヤ端末1500とで関与状況プレイをするとしても、ゲーム開始当初に関与状況プレイをする場合よりも高品質で快適なプレイ体験を堪能できる可能性は高いと言える。
さて、こうしたスタート位置決定に係り、サーバシステム1100は、プレーヤに向けて、ゲームプレイスペックに基づくプレーヤキャラクタの共用ゲーム空間における分布を示す分布情報と、自分以外のプレーヤのプレーヤ端末1500のゲームプレイスペックを示すスペック情報と、を提供する。
図6は、分布情報及びスペック情報の提供について説明するための図である。
ゲームプレイ画像14は、共用ゲーム空間8又は特別ゲーム空間の様子をレンダリングしたゲーム空間画像12と、各種情報表示と、分布情報表示操作アイコン16と、スペック情報表示操作アイコン18と、を含む。
分布情報表示操作アイコン16への操作入力を検出すると、サーバシステム1100は、当該検出のあったプレーヤ端末1500にて分布情報表示30を表示させる。
分布情報表示30は、例えば共用ゲーム空間8の全体図(または、当該検出をしたプレーヤ端末1500のプレーヤキャラクタ4を起点とする限定範囲)の簡易マップ上に、分布域32(32a,32b)を表示する。分布域32は、適合エリアAxの適合割り当ての端末レベルのグループ(例えば、Lv1とLv2のグループと、Lv3のグループと、Lv4のグループ;図4参照)別に表示される。分布域32は、当該グループに該当するプレーヤ端末1500のプレーヤキャラクタ4の配置位置を包含する楕円形などで表示するとしてもよい。或いは、等高線風の表示形態であってもよい。
因みに、図6の例では、端末レベルがLv4のプレーヤ端末1500bにて、分布情報表示操作アイコン16の操作入力が検出されたので、分布情報表示30には、Lv1とLv2のグループの分布域32aと、Lv3のグループの分布域32bと、当該プレーヤ端末のプレーヤキャラクタ4の位置を示す自キャラ位置34と、が表示されている。勿論、当該プレーヤ端末と同じLv4のグループの分布域を更に表示することとしてもよい。
また、スペック情報表示操作アイコン18への操作入力を検出すると、サーバシステム1100は、当該検出のあったプレーヤ端末1500にて、そのとき当該プレーヤ端末1500のプレーヤキャラクタ4(図6の例では、プレーヤキャラクタ4b)から最寄りの他プレーヤキャラクタのプレーヤ端末((図6の例では、プレーヤキャラクタ4eのプレーヤ端末1500e)のスペック表示40を表示させる。スペック表示40は、機種を示す機種アイコン42と、端末レベルを示すレベルアイコン44とを含む。
プレーヤは、分布情報表示30とスペック表示40とを参考にしながら、次に攻撃を仕掛ける相手を選抜する。上手く自機の端末レベルと同じプレーヤ端末1500のプレーヤキャラクタ4との関与状況プレイに持ち込めば、高品質で快適なプレイ体験を享受することが可能になる。
図7は、ゲームプレイを再開する場合のスタート位置の決定について説明するための図である。ゲームプレイを再開する場合とは、例えば、プレーヤの都合で一時的にシステムログアウトして再びシステムログインしてプレイを再開する場合や、ゲームルールで認められたリスポーンによりプレイを再開する場合、などが該当する。勿論、ゲームルールによってはこれら以外の再開の場合、例えば、仲間の復活魔法によりプレイを再開する場合など、としてもよい。
再開する場合のスタート位置は、再開するスタートプレーヤのプレーヤ端末1500のゲームプレイスペックと、共用ゲーム空間8に既に配置されているプレーヤキャラクタ4のプレーヤ端末1500のゲームプレイスペックと、の相対関係に基づいて決定される。
具体的には、再開するスタート位置は、「再開するプレーヤのプレーヤ端末1500の端末レベルが適合する適合エリアAx内であり」且つ「既に配置されている他プレーヤキャラクタのプレーヤ端末1500とのスペック値差に基づく相対距離を満たす」ように決定される。
図7の例で言うと、再開するプレーヤ端末1500aのプレーヤキャラクタ4aの周囲には、Lv4のプレーヤ端末1500eのプレーヤキャラクタ4eと、Lv2のプレーヤ端末1500fのプレーヤキャラクタ4fと、が存在している。
再開するスタート位置に係る相対距離L2xは、「スペック値」と正の関係を有する。スペック値は、例えば、通信回線の実行通信速度、CPUクロック数、搭載メモリ容量、表示部の表示画面サイズ、等の他、端末レベルの値を用いることができる。実行通信速度又は端末レベルを用いるのが好適である。よって、図7の例では、プレーヤキャラクタ4eとの相対距離L2eが、プレーヤキャラクタ4fとの相対距離L2fよりも大きくなるように、プレーヤキャラクタ4kのスタート位置が決定される。
但し、再開するプレーヤ端末1500が、所与の低スペック条件(相対的に低スペックと見なす条件、具体的には例えば端末レベル=Lv1)を満たす場合には、スタート位置は、更に、ゲーム進行状況に基づいて決定される。
図8は、ゲーム進行状況に基づくスタート位置の決定について説明するための図である。
低スペックなプレーヤ端末1500aのプレーヤキャラクタ4aについて、再開するスタート位置を決定する際、最新のゲーム進行状況として、プレーヤ端末1500aよりも高スペックなプレーヤ端末1500c、1500g、1500jのプレーヤキャラクタ4の分布を参照する。
そして、それらのプレーヤキャラクタ4の分布密度の高い場所からの相対距離L3x(図8の例では、プレーヤキャラクタ4cとプレーヤキャラクタ4gが集っている場所からの相対距離L3g)が、相対的に分布密度の低い場所からの相対距離L3x(図8の例では、プレーヤキャラクタ4jが居る場所からの相対距離L3j)より大きくなるように、スタート位置を決定する。なお、複数のプレーヤキャラクタ4が集まっている場所は、複数のプレーヤキャラクタが関与するイベントの発生箇所、と読み替えることもできる。
こうして決定されたスタート位置からプレーヤキャラクタ4aのプレイが再開されると、プレーヤキャラクタ4aは、プレーヤキャラクタ4jと遭遇する可能性が、プレーヤキャラクタ4c及びプレーヤキャラクタ4gより高くなる。
プレーヤキャラクタ4aが、プレーヤキャラクタ4c、4g、4jの何れかに遭遇すれば、プレーヤ端末1500c、1500g、1500jのプレーヤに、そのゲームプレイスペックを活かし切れないプレイ体験を強いることになるが、相対距離L3gを相対距離L3jより大きくすることで、活かし切れないプレイ体験を強いる程度を抑えることができる。
次に、機能構成について説明する。
図9は、サーバシステム1100の機能構成例を示す機能ブロック図である。
サーバシステム1100は、操作入力部100sと、サーバ処理部200sと、音出力部390sと、画像表示部392sと、通信部394sと、サーバ記憶部500sとを備える。
操作入力部100sは、サーバシステム1100の管理のための各種操作を入力するための手段である。例えば、キーボード、タッチパネル、マウス、などがこれに該当する。
サーバ処理部200sは、例えばCPUやGPU、ASIC、FPGA等の演算回路となるプロセッサの他、ICメモリなどの電子部品によって実現され、操作入力部100sやサーバ記憶部500sを含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100sからの操作入力信号、プレーヤ端末1500などから受信したデータ、等に基づいて各種の演算処理を実行して、サーバシステム1100の動作を統合的に制御する。
サーバ処理部200sは、ユーザ管理部202と、ゲーム管理部210と、計時部280sと、音生成部290sと、画像生成部292sと、通信制御部294sとを含む。勿論、これら以外の機能部も適宜含めることができる。
ユーザ管理部202は、ユーザ登録手続きに係る処理及びユーザアカウントに紐付けられる各種情報の管理を行う。具体的には、ユーザ管理部202は、登録ユーザへの固有のユーザアカウントの付与、ユーザアカウント別の個人情報の管理、オンラインゲームのプレイに係るセーブデータの管理、などを行う。
ゲーム管理部210は、プレーヤ端末1500にて所与のオンラインゲームをプレイさせるための各種制御を行う。具体的には、ゲーム管理部210は、オンラインゲームのゲーム進行制御に係る各種処理を実行する。例えば、プレーヤキャラクタ4やNPC、背景オブジェクトなどの各種オブジェクトを共用ゲーム空間8へ配置したり、プレーヤの操作入力に応じてプレーヤキャラクタ4を動作制御したり、NPCを所与のAI制御に基づいて動作制御したり、オブジェクトのコリジョン判定をしたり、攻撃のヒット判定をしたり、ダメージ判定やダメージ反映をしたり、プレーヤキャラクタ4やNPCの能力パラメータ値を変更したり、イベントを発生させたり、ゲーム成績を算定したり、ゲーム終了や関与状況の終了の判定を行ったり、する。
そして、ゲーム管理部210は、共用ゲーム空間設定部212と、ゲームプレイスペック情報取得部214と、端末レベル判定部220と、適合エリア設定部222と、スタート位置決定部230と、イベント制御部236と、スペック情報表示制御部238と、分布情報表示制御部240と、を有する。
共用ゲーム空間設定部212は、仮想3次元空間に共用ゲーム空間8を設定し、プレーヤキャラクタ4などのゲームに登場する各種オブジェクトを配置し、ゲーム進行制御の結果に応じてそれらオブジェクトの位置や姿勢、形状、大きさ、出現、消去、を制御する。
ゲームプレイスペック情報取得部214は、プレーヤ端末それぞれのゲームプレイスペックを表す情報を取得する。ゲームプレイスペック情報取得部214は、機種情報取得部216と、通信状況情報取得部218と、を有する。
機種情報取得部216は、ゲームプレイスペックを表す情報として、プレーヤ端末の機種の情報を取得する。
通信状況情報取得部218は、ゲームプレイスペックを表す情報として、プレーヤ端末の通信速度に係る通信状況情報を取得する。
端末レベル判定部220は、ゲームプレイスペックに基づいてプレーヤ端末の能力の総合評価を行い端末レベルを設定する。
適合エリア設定部222は、ゲームプレイスペックに基づく適合エリアを、共用ゲーム空間中に設定する。具体的には、適合エリア設定部222は、所与の相互相応条件を満たさない異なるゲームプレイスペックそれぞれに応じた適合エリアを設定し、適合エリアの設定位置をゲーム進行状況に基づいて可変に設定する。また、適合エリア設定部222は、ゲーム開始前のプレーヤの人数又はプレーヤ端末の台数をゲームプレイスペックに基づいて仕分けした統計値を用いて、適合エリアの数、位置、及び大きさのうちの何れかを変更する。
スタート位置決定部230は、ゲームプレイを開始又は再開するスタートプレーヤについて、当該スタートプレーヤのプレーヤキャラクタの共用ゲーム空間中のスタート位置を、当該スタートプレーヤのプレーヤ端末のゲームプレイスペックに基づいて決定する。そして、スタート位置決定部230は、希望受付部232を有する。
希望受付部232は、スタートプレーヤのプレーヤ端末のゲームプレイスペックに適合する適合エリアのうち、スタート位置として希望するエリア又は当該エリア中の希望する場所をスタートプレーヤの操作入力に基づいて受け付ける。
そして、スタート位置決定部230は、スタートプレーヤのプレーヤ端末のゲームプレイスペックに適合する適合エリアを選択し、選択した適合エリアにスタート位置を決定する。より詳細には、スタートプレーヤのプレーヤ端末が第1のプレーヤ端末との間で相互相応条件を満たし、且つ、第2のプレーヤ端末との間で相互相応条件を満たさない場合に、スタート位置を、第2のプレーヤ端末のプレーヤキャラクタよりも第1のプレーヤ端末のプレーヤキャラクタに近い位置に決定する。相対距離L1x(図4参照)、相対距離L2X(図7参照)の設定がこれに該当する。
イベント制御部236は、ゲームプレイスペックが所与の相互相応条件を満たすプレーヤ端末のプレーヤキャラクタ(以下、「相互相応端末キャラクタ」という)同士が所与の接近条件を満たした場合に、相互相応端末キャラクタを対象とする所与のイベントを発動させる。具体的には、イベント制御部236は、接近条件を満たす相互相応端末キャラクタの数に基づいて、イベントを発動させる。
スペック情報表示制御部238は、プレーヤ端末に、当該プレーヤ端末以外のプレーヤ端末のゲームプレイスペックを示す情報を表示させる制御を行う。スペック表示40(図6参照)に係る制御がこれに該当する。
分布情報表示制御部240は、プレーヤ端末に、ゲームプレイスペックに基づくプレーヤキャラクタの共用ゲーム空間における分布を示す分布情報を表示させる制御を行う。分布情報表示30(図6参照)に係る制御がこれに該当する。
計時部280sは、システムクロックを利用して現在日時や制限時間等の各種計時を行う。
音生成部290sは、音声データの生成やデコードをするICやソフトウェアの実行により実現され、サーバシステム1100のシステム管理や、オンラインゲームの提供に係る操作音や効果音、BGM、音声通話、などの音声データを生成或いはデコードする。そして、システム管理に関する音声信号は音出力部390sへ出力する。
音出力部390sは、スピーカ等により実現され、音声信号に基づいて放音する。
画像生成部292sは、サーバシステム1100のシステム管理のための各種管理画面の画像の生成を行い、画像データを画像表示部392sに出力する。画像表示部392sは、フラットパネルディスプレイや、ヘッドマウントディスプレイ、プロジェクターなど、画像を表示させる装置で実現される。
また、画像表示部392sは、各プレーヤ端末1500に表示させるゲームプレイ画像の元になる共用ゲーム空間8や特別ゲーム空間10のゲーム空間画像をレンダリングする。
通信制御部294sは、データ通信に係るデータ処理を実行し、通信部394sを介して外部装置とのデータのやりとりを実現する。
通信部394sは、ネットワーク9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。図1の例では通信装置1153がこれに該当する。
サーバ記憶部500sは、サーバ処理部200sにサーバシステム1100を統合的に制御させるための諸機能を実現するためのプログラムや各種データ等を記憶する。また、サーバ処理部200sの作業領域として用いられ、サーバ処理部200sが各種プログラムに従って実行した演算結果などを一時的に記憶する。この機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVDなどの光学ディスク、オンラインストレージなどによって実現される。図1の例では本体装置1101が搭載するICメモリ1152やハードディスクなどの記憶媒体がこれに該当する。オンラインストレージをサーバ記憶部500sに含めても良い。
図10は、サーバ記憶部500sが記憶するプログラムやデータの例を示す図である。本実施形態におけるサーバ記憶部500sは、サーバプログラム501と、配信用クライアントプログラム503と、ゲーム初期設定データ510と、ユーザ登録データ600と、プレイデータ700と、現在日時900と、を記憶する。サーバ記憶部500sは、その他のプログラムやデータ(例えばタイマーや、カウンタ、各種フラグなど)も適宜記憶する。
サーバプログラム501は、サーバ処理部200sが読み出して実行することで、サーバ処理部200sにユーザ管理部202及びゲーム管理部210としての機能を実現させるためのプログラムである。
配信用クライアントプログラム503は、プレーヤ端末1500へ提供されて実行されるプログラムのオリジナルである。
ゲーム初期設定データ510は、オンラインゲームに係る各種初期設定データを格納する。例えば、ゲーム初期設定データ510は、共用ゲーム空間初期設定データ512と、適合エリア初期設定データ520と、適合エリア変更パターン定義データ530と、イベント初期設定データ550と、端末レベル定義データ570と、を含む。勿論、これら以外のデータも適宜含めることができる。
共用ゲーム空間初期設定データ512は、ゲームスタート時の共用ゲーム空間8の状態を定義する各種データを格納する。例えば、共用ゲーム空間8の形状の定義データ、背景オブジェクトの種類及びその配置位置、NPCの種類及びその配置位置、などを含む。
適合エリア初期設定データ520は、適合エリアAx(図4参照)の初期設定を示す各種データを格納する。1つの適合エリア初期設定データ520は、例えば図11に示すように、固有のエリアID521と、初期エリア範囲定義データ523と、初期適合端末レベル525と、初期配置上限数527と、を含む。勿論、これら以外の情報も適宜含めることができる。
図10に戻って、適合エリア変更パターン定義データ530は、適合エリアAxの設定をゲーム進行状況に応じて変更・設定するパターン毎に用意され、当該パターンを記述する各種データを格納する。1つの適合エリア変更パターン定義データ530は、例えば図12に示すように、固有の変更パターンID531と、変更を実行するために満たすべき条件を示す変更要件データ532と、変更内容データ535と、を含む。
変更要件データ532は、例えば、プレーヤ端末総台数条件533と、端末レベルでプレーヤ端末1500の台数を仕分けした台数比率の条件である台数比率条件534と、をANDやORで組み合わせて記述する。
変更内容データ535は、どの適合エリアAxの設定をどのように変更するかの組み合わせ毎に用意される。1つの変更内容データ535は、変更対象エリアID536と、範囲変更内容537と、適合端末レベル変更内容538と、配置上限数変更内容539と、を含む。
範囲変更内容537、適合端末レベル変更内容538、配置上限数変更内容539は、変更要件データ532で示されるゲームプレイスペックが様々に異なるプレーヤ端末1500の組み合わせ状況において、スタート位置がどの端末レベルにおいても適度に分散できるように、変更内容が設定されている。
例えば、全てのプレーヤ端末1500の端末レベルが「Lv4」であるようなケースでは、変更内容データ535は、適合端末レベルが「Lv4」とされる適合エリアAxの数を初期設定のそれより多くなるような変更内容とする。或いは、適合端末レベルが「Lv4」の適合エリアAxの範囲を広くする変更内容とする。
逆に、初期設定の想定よりも「Lv1」のプレーヤ端末1500の台数が多いケースでは、適合端末レベルが「Lv1」とされる適合エリアAxの数を初期設定のそれより多くなるように設定する。
図10に戻って、イベント初期設定データ550は、イベントの内容毎に用意され、当該イベントの発動及び実行に係る各種データを格納する。1つのイベント初期設定データ550は、例えば図13に示すように、固有のイベントID551と、イベント発動要件データ553と、イベント内容データ557と、を格納する。
イベント発動要件データ553は、接近距離条件554、キャラクタ数条件555、端末レベル条件556、といったサブ条件のAND又はORとして記述される。なお、これらのサブ条件は、実質的「条件無し」「無制限」も設定可能である。
接近距離条件554は、複数のプレーヤキャラクタ4の相対距離に関する条件である。当該条件を関与状況条件と同じとしてもよい。
キャラクタ数条件555は、接近距離条件を満たしたプレーヤキャラクタ4の数(具体的には「2」以上)についての条件である。
端末レベル条件556は、プレーヤキャラクタ4の適用端末レベル606に係る条件である。例えば、「端末レベルが全てLv4である」「端末レベルが同じである」など、相互相応条件を満たすと見なせる条件を設定してもよい。
イベント内容データ557は、イベントを実行するための各種データを格納する。イベント内容は適宜設定可能である。
例えば、接近距離条件554が「関与状況条件と同じ」、且つキャラクタ数条件555が「2体」、且つ端末レベル条件556が「端末レベルが全てLv4」、を発動要件とするイベントの場合、イベント内容として「関与状況プレイに使用するプレーヤキャラクタ4のオブジェクトモデルとして特別にディテールに凝ったモデルとモーションデータを用いる」「ゲーム空間画像12の画像品質を通常より高くする」といった内容でもよい。この場合、高スペックなプレーヤ端末1500のプレーヤキャラクタ4が遭遇した場合に、また、キャラクタ数条件555が「4体」ならば、「2対2に分かれたチーム対戦形式のミニゲームを実行する」「4体で協力して敵NPCを討伐する協力ミッション」、などをイベント内容としてもよい。
こうしたイベント内容は、高スペックなプレーヤ端末1500同士での完全同期型ゲームであるからこそ、その真価を発揮するものであり、プレーヤは、高品質な特別なプレイ体験が得られることとなる。特別な条件で特別なイベントを発動させることは、ゲームの興趣を高めることにもなる。また、そのことがプレーヤコミュニティで話題になれば、高スペックなプレーヤ端末1500を用意してゲームに臨むプレーヤの数が増え、ひいてはオンラインゲームにおいて高品質なプレイ体験を享受できる機会が増えることにもなる。
図10に戻って、端末レベル定義データ570は、端末レベル(図3参照)のレベル別に用意され、ゲームプレイスペックを表す情報に基づいて、そのプレーヤ端末1500の総合性能を分類評価し、当該端末レベルであると判定するための基準を示す。1つの端末レベル定義データ570は、例えば図14に示すように、固有の端末レベル571と、判定要件定義データ573と、を対応付けて格納する。
判定要件定義データ573は、端末レベル571であると判定するために満たされるべき条件、すなわち「相互相応条件」を定義するデータであって、1つ又は複数のサブ条件のANDやORで組み合わせて記述されている。
サブ条件としては、例えば、プレーヤ端末1500のスペックに関連して、機種条件、CPU種類条件、搭載メモリ量条件、OS種類条件、レンダリングエンジン種類条件、表示部スペック条件、通信機能スペック条件、などを用いることができる。つまり、演算処理能力や通信処理能力に影響するスペックについての条件を用いることができる。
また例えば、通信状況に関連するサブ条件としては、回線種類条件、通信速度条件などを用いることができる。回線種類条件は、有線/無線の別や、使用する通信規格、等の条件である。
図10に戻って、ユーザ登録データ600は、プレーヤとなる登録ユーザ毎に作成され、当該ユーザに紐付けられる各種データを格納する。
1つのユーザ登録データ600は、例えば図15に示すように、固有のユーザアカウント601と、プレーヤ端末1500にネットワーク9を介してアクセスするための端末アクセス情報603(例えば、IPアドレスなど)と、ゲームプレイスペック情報605と、適用端末レベル606と、プレーヤキャラクタ設定データ608と、を含む。勿論、これら以外のデータ、例えばオンラインゲームのセーブデータなども適宜含めることができる。
ゲームプレイスペック情報605に含まれる情報は、端末レベル定義データ570の判定要件定義データ573(図14参照)を記述するサブ条件の項目に対応する。
プレーヤキャラクタ設定データ608は、当該ユーザがカスタマイズしたプレーヤキャラクタ4の設定データを格納する。プレーヤキャラクタ4のカスタマイズは、ユーザ登録手続の際に行う。
図10に戻って、プレイデータ700は、オンラインゲームの実現に係る各種データを格納し、ゲーム進行に応じて逐次更新される。プレイデータ700は、例えば図16に示すように、プレーヤアカウントリスト701と、共用ゲーム空間データ703と、適合エリア設定データ710と、希望エリア受付データ720と、プレーヤキャラクタ管理データ730と、関与状況プレイ管理データ740と、分布情報750と、を含む。勿論、これら以外の情報、例えばプレイ成績データなども適宜含めることができる。
適合エリア設定データ710は、適合エリアAx(図4参照)毎に作成され、当該適合エリアAxの各種設定データを格納する。1つの適合エリア設定データ710は、固有のエリアID711と、エリア範囲データ713と、適合端末レベル715と、配置上限数717と、を含む。勿論、これら以外の情報も適宜含めることができる。
希望エリア受付データ720は、プレーヤ端末1500別に用意され、当該端末のプレーヤキャラクタ4をどの適合エリアAxへ配置するかのプレーヤの希望受付の結果を格納する。1つの希望エリア受付データ720は、端末IDと、希望エリアIDと、を対応付けて格納する。
プレーヤキャラクタ管理データ730は、プレーヤキャラクタ4別に用意され、当該キャラクタの最新状況を記述する各種データを格納する。1つのプレーヤキャラクタ管理データ730は、例えばキャラクタID731と、プレーヤアカウント732と、端末ID733と、位置座標734と、操作制御データ735と、能力パラメータ値736と、を含む。勿論、これら以外の情報も適宜含めることができる。
関与状況プレイ管理データ740は、関与状況が検出される毎に作成され、当該関与状況におけるプレイの最新の進行状態を記述する各種データ、例えば、固有の関与状況ID、関与端末リスト、特別ゲーム空間データ、視点カメラ制御データ、などを含む。勿論、これら以外のデータも適宜格納することができる。例えば、関与状況の終了条件の判定に必要な制限時間計時用のタイマー値なども含めることができる。特別ゲーム空間データは、当該関与状況に伴い作成される特別ゲーム空間に配置されている各種オブジェクトのオブジェクトモデルの最新状態における頂点データやポリゴンデータのデータ群である。
図17は、プレーヤ端末1500の機能構成例を示す機能ブロック図である。プレーヤ端末1500は、操作入力部100と、端末処理部200と、音出力部390と、画像表示部392と、通信部394と、端末記憶部500と、を備える。
操作入力部100は、プレーヤによってなされた各種の操作入力に応じた操作入力信号を端末処理部200に出力する。例えば、プッシュスイッチや、ジョイスティック、タッチパッド、トラックボール、加速度センサ、ジャイロ、などによって実現できる。
端末処理部200は、例えばCPUやGPU等のマイクロプロセッサや、ICメモリなどの電子部品によって実現され、操作入力部100や端末記憶部500を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100からの操作入力信号、サーバシステム1100から受信した各種データに基づいて各種の演算処理を実行して、プレーヤ端末1500の動作を制御する。
そして、本実施形態における端末処理部200は、クライアント制御部260と、計時部280と、音生成部290と、画像生成部292と、通信制御部294と、を有する。
クライアント制御部260は、クライアント・サーバ型のゲームシステムにおけるゲームクライアントとしての制御として、プレーヤ端末1500をMMIFとして機能させる各種制御を行う。具体的には、クライアント制御部260は、操作入力情報提供部261と、表示制御部262と、を有する。
操作入力情報提供部261は、操作入力部100からの入力に応じた操作入力情報をサーバシステム1100へ送信する制御を行う。
表示制御部262は、サーバシステム1100から受信したデータに基づいてゲームプレイ画像14を表示させるための制御を行うが、本実施形態ではサーバシステム1100にてゲームプレイ画像14を生成するので、表示制御部262はゲーム空間画像12のレンダリングに係る制御は行わない(図6参照)。サーバシステム1100からMMIF情報として提供されるゲームプレイ画像14を表示させる制御を行う。提供されるデータが圧縮データである場合には、当該データの解凍処理などを行う。
計時部280は、システムクロックを利用して現在日時や制限時間等の計時を行う。
音生成部290は、例えばデジタルシグナルプロセッサ(DSP)や、音声合成ICなどのプロセッサ、音声ファイルを再生可能なオーディオコーデック等によって実現され、楽曲や効果音、各種操作音の音信号を生成し、音出力部390に出力する。
音出力部390は、スピーカなど音生成部290から入力される音信号に基づいて音出力(放音)する装置によって実現される。
画像生成部292は、クライアント制御部260の制御に基づく画像を画像表示部392へ表示させる画像信号を生成・出力する。図1の例では、制御基板1550に搭載されるGPU(Graphics Processing Unit)や、グラフィックコントローラ、グラフィックボード、などがこれに該当する。
画像表示部392は、フラットパネルディスプレイや、ヘッドマウントディスプレイ、プロジェクターなど、画像を表示させる装置で実現される。
通信制御部294は、データ通信に係るデータ処理を実行し、通信部394を介して外部装置とのデータのやりとりを実現する。
通信部394は、ネットワーク9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。図1の例では通信モジュール1553がこれに該当する。
端末記憶部500は、端末処理部200に所与の機能を実現させるためのプログラムや、各種データ等を記憶する。また、端末処理部200の作業領域として用いられ、端末処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。こうした機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVDなどの光学ディスクなどによって実現される。図1の例では、制御基板1550が搭載するICメモリ1552がこれに該当する。
具体的には、端末記憶部500は、端末処理部200をクライアント制御部260として機能させるためのクライアントプログラム502(アプリケーションプログラム)と、受信済MMIF情報590と、現在日時900と、を記憶する。勿論、これら以外のデータも適宜記憶できる。例えば、サーバシステム1100から受信した、ゲームプレイ画像14を表示させるためのデータも一時的に記憶する。
次に、ゲームシステム1000の動作について説明する。
図18と図19は、オンラインゲームの実行に係るサーバシステム1100が実行する処理の流れを説明するためのフローチャートである。
図18に示すように、サーバシステム1100は、オンラインゲームへの参加受付処理をする(ステップS10)。サーバシステム1100は、参加受付に応じたプレーヤ端末1500から、それぞれのゲームプレイスペックに係る情報(例えば、機種、CPU種類、回線種類、など)を取得してユーザ登録データ600のゲームプレイスペック情報605(図15参照)に保存する(ステップS12)。
次いで、サーバシステム1100は、各プレーヤ端末1500の端末レベルを判定する(ステップS14)。具体的には、ゲームプレイスペック情報605を端末レベル定義データ570(図14参照)の判定要件定義データ573と照合し、判定要件を満たす定義データの端末レベル571を適用端末レベル606(図15参照)に設定する。
次に、サーバシステム1100は、全てのプレーヤ端末1500を適用端末レベル606の別に仕分けして、各端末レベルの台数と台数比を算出し(ステップS16)、適合エリア設定データ710(図16参照)を作成する(ステップS18)。
具体的には、適合エリア初期設定データ520(図11参照)の内容をコピーして適合エリア設定データ710を作成する。次いで、適合エリア変更パターン定義データ530(図12参照)を参照して、変更要件データ532を満たす定義データの変更内容データ535を選択・適用することで、先に作成した適合エリア設定データ710の設定を変更する。
次に、サーバシステム1100は、プレーヤ端末1500別に希望エリアの受付を行う(ステップS20)。具体的には、プレーヤ端末1500別に、対応する適用端末レベル606が適合端末レベル715に適合する適合エリア設定データ710を検索する(図16参照)。そして、検索した適合エリアAxを選択候補エリアとする希望エリア受付画面W5(図5参照)を当該プレーヤ端末にて表示させる。プレーヤ端末1500か希望エリアとして選択操作された適合エリアAxの情報を取得すると、サーバシステム1100は、希望エリア受付データ720(図16参照)を作成する。
次いで、サーバシステム1100は、各プレーヤキャラクタ4のスタート位置を決定する(ステップS22)。
具体的には、最初のプレーヤキャラクタ4は、処理対象とするスタートプレーヤの希望エリア内にスタート位置をランダムに決定する。
2体目以降のプレーヤキャラクタ4は、希望エリアが同じであれば、既にスタート位置が決まっているプレーヤキャラクタ4との相対距離L1x(図4参照)を算出して、配置上限数717(図16参照)に達していない限り、希望エリア内にあって相対距離L1xを満たす位置をスタート位置とする。
2体目以降のプレーヤキャラクタ4のスタート位置を決定する際、希望エリアに、既に配置上限数717に達するスタート位置が設定されている場合には、希望エリアの隣の適合エリアAxを希望エリアと見なして、その中に相対距離L1xを満たすようにスタート位置を決定する。希望エリアに既に設定されているスタート位置の数は配置上限数717に達していないが、相対距離L1xを満たす位置を決定できない場合は、やはり希望エリアの隣の適合エリアAxを希望エリアと見なして、その中に相対距離L1xを満たすようにスタート位置を決定する。
なお、希望エリアの受付を省略した構成では、ステップS20を省略し、ステップS22では適用端末レベル606が適合端末レベル715に適合する適合エリアAxの範囲内に、相対距離L1xを満たすようにスタート位置を決定する。また、相対距離L1xを考慮しないように省略した構成では、適用端末レベル606が適合端末レベル715に適合する適合エリアAxの範囲内に、ランダムにスタート位置を決定する。
次に、サーバシステム1100は共用ゲーム空間8を初期化し(ステップS40)、ゲームの進行制御を開始する(ステップS42)。進行制御の開始とともに分布情報750やプレイ成績データの更新も開始する。
また、進行制御の開始とともに、サーバシステム1100は、分布情報表示30やスペック表示40を表示させる操作入力があったプレーヤ端末1500にて、それらを表示させる表示リクエストへの応答を開始する(ステップS44)。
図19に移って、サーバシステム1100は、ゲームプレイを再開するスタートプレーヤが有る場合(ステップS50のYES)、当該スタートプレーヤのプレーヤ端末1500が所与の低スペック条件を満たすか判定する(ステップS52)。
もし、低スペック条件を満たす場合には(ステップS52のYES)、サーバシステム1100は、当該プレーヤ端末1500の端末レベルと、ゲーム進行状況と、に基づいて再開するスタート位置を決定する(ステップS54)。具体的には、サーバシステム1100は、再開するスタートプレーヤのプレーヤキャラクタ4を、再開するスタートプレーヤのプレーヤ端末1500よりも高スペックなプレーヤ端末1500のプレーヤキャラクタ4の集まりから遠ざけるように相対距離L3x(図8参照)を決定する。そして、再開するスタートプレーヤのプレーヤ端末1500の端末レベルに対応する適合エリアAxの範囲内で相対距離L3xを満たす位置を、スタート位置として決定する。
もし、低スペック条件を満たさない場合には(ステップS52のNO)、サーバシステム1100は、スペック値差に基づいて再開のスタート位置を決定する(ステップS56)。具体的には、再開するスタートプレーヤのプレーヤ端末1500のゲームプレイスペックと、再開するスタートプレーヤのプレーヤ端末1500から所定範囲内の共用ゲーム空間8に既に配置されているプレーヤキャラクタ4のプレーヤ端末1500のゲームプレイスペックとのスペック値差に基づく相対距離L2xを算出する(図7参照)。そして、再開するスタートプレーヤのプレーヤ端末1500の端末レベルに対応する適合エリアAxの範囲内で相対距離L2xを満たすスタート位置を決定する。
そして、サーバシステム1100は、決定したスタート位置に、再開するスタートプレーヤのプレーヤキャラクタ4を配置する(ステップS58)。
サーバシステム1100は、各プレーヤキャラクタ4の共用ゲーム空間8での位置を把握しているので、ゲーム開始以降において複数のプレーヤキャラクタ4の接近を検出すると(ステップS60のYES)、接近したキャラクタ数をカウントする(ステップS62)。具体的には、2体のプレーヤキャラクタ4が、イベント初期設定データ550(図13参照)の接近距離条件554を満たすと、接近数カウント用タイマーを起動して所定時間の経時を開始し、接近距離条件554を満たすまでのプレーヤキャラクタ数をカウントし続ける。
そして、サーバシステム1100は、イベント発動要件データ553が満たされたイベント初期設定データ550の設定に従ってイベントを発動させる(ステップS64)。
サーバシステム1100は、共用ゲーム空間8を用いた非同期型ゲームの終了条件が満たされるまでは(ステップS80のNO)、ステップS50からステップS64を繰り返す。終了条件が満たされたならば(ステップS80のYES)、所定のゲーム終了処理(例えば、ゲーム終了の宣言、順位発表、報酬の授与、ランキング更新、セーブデータの保存、など)を行って(ステップS82)、一連の処理を終了する。
以上、本実施形態によれば、様々なゲームクライアントが共有ゲーム空間で関与状況を通じてマルチプレイを楽しむオンラインゲームにおいて、良質なプレイ体験が得られる機会を増やすことができる。
すなわち、サーバシステム1100は、共用ゲーム空間8にプレーヤキャラクタ4を配置するスタート位置を、各プレーヤキャラクタ4のプレーヤ端末1500のゲームプレイスペックに応じて決定できる。よって、無作為にスタート位置を決定する場合よりも、ゲームプレイスペックが同じ又は近いプレーヤ端末1500のプレーヤキャラクタ4同士が遭遇する可能性が上がる。例えば、ゲームプレイスペックが高いプレーヤ端末1500のプレーヤキャラクタ4は、同じようにゲームプレイスペックが高い他のプレーヤ端末1500のプレーヤキャラクタ4と遭遇し、その高いスペックに応じた良質なプレイ体験が得られる機会が増える。
〔変形例〕
以上、本発明を適用した実施形態の一例について説明したが、本発明を適用可能な形態は上記形態に限定されるものではなく適宜構成要素の追加・省略・変更を施すことができる。
(変形例その1)
ゲームの内容はバトルロワイヤル形式の対戦アクションゲームに限らず適宜設定可能である。そして、ゲーム内容によっては関与状況の定義や関与状況プレイの内容も適宜設定可能である。例えば、上記実施形態における関与状況は、2体のプレーヤキャラクタ4がエンカウントするイベントとして定義されているがこれに限らない。例えば、複数のプレーヤキャラクタ4がチームを組んでプレイするゲームであれば、関与状況を、2体以上のプレーヤキャラクタ4が関与するイベントと定義できる。具体的には、例えば、エンカウントに限らず、当該チームとしてゲーム進行上重要なNPCと遭遇して起きるイベント(例えば、NPCの討伐、NPCに依頼されたアイテムの取得、など)や、当該チームとしてゲーム進行上重要なナゾを解くイベント、などの発生をもって関与状況の発生としてもよい。
(変形例その2)
上記実施形態では、ゲームシステム1000を、C/S型システムとして例示したが、これに限らない。例えば、サーバシステム1100を省略した、プレーヤ端末1500のピア・ツー・ピア接続によるP2Pシステムとし、何れか又は複数のプレーヤ端末1500に、サーバシステム1100の機能を担わせる構成も可能である。
(変形例その3)
上記実施形態において、サーバシステム1100が担っていたゲーム進行制御(共用ゲーム空間8を用いた非同期型ゲーム、特別ゲーム空間10を用いた完全同期型ゲームの進行制御)を、プレーヤ端末1500の何れか又は複数に担わせる構成も可能である。すなわち、サーバシステム1100が、参加受付・ユーザ登録データ600の集中管理・プレーヤ端末1500間のデータの中継処理を担うが、ゲーム管理部210に相当する機能は担わない。ゲーム管理部210は、プレーヤ端末1500の何れか又は複数で担う。
(変形例その4)
ゲームプレイスペックを記述する情報は、適宜設定可能である。
例えば、機種の情報をプレーヤ端末1500の商品名として、ゲームプレイスペックを記述する情報を機種の情報のみとしてもよい。その場合、端末レベル定義データ570の判定要件定義データ573の端末スペック関連の情報は、機種条件のみとすることができる。
(変形例その5)
また上記実施形態における希望エリアの受付を、希望エリアの中の更に希望する場所の受付に読み替えることもできる。
(変形例その6)
また、サーバシステム1100が、共用ゲーム空間8及び特別ゲーム空間10を用いた関与状況プレイに係るゲームプレイ画像14の生成を行わず、それらをプレーヤ端末1500にて実行させる構成とすることもできる。
具体的には、上述した実施形態でサーバシステム1100が記憶・管理することとした共用ゲーム空間データ703と、関与状況プレイ管理データ740のうちの特別ゲーム空間データとを、各プレーヤ端末1500が記憶・管理することとする。そして、サーバシステム1100は、MMIF情報として、共用ゲーム空間8を用いた非同期型ゲームの進行制御の結果を示す進行情報を各プレーヤ端末1500へ配信する。各プレーヤ端末1500は当該MMIF情報に基づいて、それぞれが記憶している共用ゲーム空間データ703を更新する。そして、それぞれの共用ゲーム空間データ703に基づいて共用ゲーム空間8のゲームプレイ画像14をそれぞれで生成して表示する。すなわち、ゲームプレイ画像14のレンダリングを各プレーヤ端末1500が担う。特別ゲーム空間10についても同様である。
4…プレーヤキャラクタ
8…共用ゲーム空間
30…分布情報表示
40…スペック表示
200s…サーバ処理部
210…ゲーム管理部
212…共用ゲーム空間設定部
214…ゲームプレイスペック情報取得部
216…機種情報取得部
218…通信状況情報取得部
220…端末レベル判定部
222…適合エリア設定部
230…スタート位置決定部
232…希望受付部
236…イベント制御部
238…スペック情報表示制御部
240…分布情報表示制御部
500s…サーバ記憶部
501…サーバプログラム
520…適合エリア初期設定データ
530…適合エリア変更パターン定義データ
550…イベント初期設定データ
570…端末レベル定義データ
600…ユーザ登録データ
605…ゲームプレイスペック情報
606…適用端末レベル
700…プレイデータ
703…共用ゲーム空間データ
710…適合エリア設定データ
713…エリア範囲データ
715…適合端末レベル
720…希望エリア受付データ
730…プレーヤキャラクタ管理データ
750…分布情報
1000…ゲームシステム
1100…サーバシステム
1150…制御基板
1500…プレーヤ端末
Ax…適合エリア
L1x…相対距離
L2x…相対距離
L3x…相対距離
W5…希望エリア受付画面

Claims (16)

  1. 各プレーヤがプレーヤ端末を用いて共用ゲーム空間を移動可能なプレーヤキャラクタを操作し、マルチプレイによるゲームプレイを楽しむオンラインゲームを提供するサーバシステムであって、
    前記プレーヤ端末には、ゲームプレイスペックが異なる端末があり、
    各プレーヤのプレーヤ端末の前記ゲームプレイスペックを表す情報を取得するゲームプレイスペック情報取得手段と、
    前記ゲームプレイを開始又は再開するスタートプレーヤについて、当該スタートプレーヤのプレーヤキャラクタの前記共用ゲーム空間中のスタート位置を、当該スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに基づいて決定するスタート位置決定手段と、
    を備えるサーバシステム。
  2. 前記ゲームプレイスペック情報取得手段は、前記ゲームプレイスペックを表す情報として、前記プレーヤ端末の機種の情報を取得する機種情報取得手段を有し、
    前記スタート位置決定手段は、前記スタートプレーヤのプレーヤ端末の機種に基づいて、前記スタート位置を決定する、
    請求項1に記載のサーバシステム。
  3. 前記ゲームプレイスペック情報取得手段は、前記ゲームプレイスペックを表す情報として、前記プレーヤ端末の通信速度に係る通信状況情報を取得する通信状況情報取得手段を有し、
    前記スタート位置決定手段は、前記スタートプレーヤのプレーヤ端末の前記通信状況情報に基づいて、前記スタート位置を決定する、
    請求項1又は2に記載のサーバシステム。
  4. 前記プレーヤ端末には、前記ゲームプレイスペックが所与の相互相応条件を満たさない第1のプレーヤ端末と第2のプレーヤ端末とが含まれ、
    前記スタート位置決定手段は、前記スタートプレーヤのプレーヤ端末が前記第1のプレーヤ端末との間で前記相互相応条件を満たし、且つ、前記第2のプレーヤ端末との間で前記相互相応条件を満たさない場合に、前記スタート位置を、前記第2のプレーヤ端末のプレーヤキャラクタよりも前記第1のプレーヤ端末のプレーヤキャラクタに近い位置に決定する、
    請求項1から請求項3の何れか一項に記載のサーバシステム。
  5. 前記ゲームプレイスペックに基づく適合エリアを前記共用ゲーム空間中に設定する適合エリア設定手段、
    を更に備え、
    前記スタート位置決定手段は、前記スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに適合する前記適合エリアを選択し、選択した前記適合エリアに前記スタート位置を決定する、
    請求項1から請求項4の何れか一項に記載のサーバシステム。
  6. 前記適合エリア設定手段は、前記適合エリアの設定位置をゲーム進行状況に基づいて可変に設定する、
    請求項5に記載のサーバシステム。
  7. 前記適合エリア設定手段は、所与の相互相応条件を満たさない異なるゲームプレイスペックそれぞれに応じた前記適合エリアを設定する、
    請求項5又は請求項6に記載のサーバシステム。
  8. 前記スタート位置決定手段は、前記スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに適合する前記適合エリアのうち、前記スタート位置として希望するエリア又は当該エリア中の場所を前記スタートプレーヤの操作入力に基づいて受け付ける希望受付手段を有する、
    請求項5から請求項7の何れか一項に記載のサーバシステム。
  9. 前記適合エリア設定手段は、ゲーム開始前の前記プレーヤの人数又は前記プレーヤ端末の台数を前記ゲームプレイスペックに基づいて仕分けした統計値を用いて、前記適合エリアの数、位置、及び大きさのうちの何れかを変更して前記適合エリアを設定する、
    請求項5から請求項8の何れか一項に記載のサーバシステム。
  10. 前記適合エリア設定手段は、ゲームプレイ中の前記プレーヤの人数又は前記プレーヤ端末の台数を前記ゲームプレイスペックに基づいて仕分けした統計値を用いて、前記適合エリアの数、位置、及び大きさのうちの何れかを変更して前記適合エリアを設定する、
    請求項5から請求項8の何れか一項に記載のサーバシステム。
  11. 前記ゲームプレイスペックが所与の相互相応条件を満たす前記プレーヤ端末の前記プレーヤキャラクタ(以下、「相互相応端末キャラクタ」という)同士が所与の接近条件を満たした場合に、前記相互相応端末キャラクタを対象とする所与のイベントを発動させるイベント制御手段、
    を更に備える請求項1から請求項10の何れか一項に記載のサーバシステム。
  12. 前記イベント制御手段は、前記接近条件を満たす前記相互相応端末キャラクタの数に基づいて、前記イベントを発動させる、
    請求項11に記載のサーバシステム。
  13. 前記プレーヤ端末に、当該プレーヤ端末以外のプレーヤ端末の前記ゲームプレイスペックを示す情報を表示させる制御を行うスペック情報表示制御手段、
    を更に備える請求項1から請求項12の何れか一項に記載のサーバシステム。
  14. 前記プレーヤ端末に、前記ゲームプレイスペックに基づく前記プレーヤキャラクタの前記共用ゲーム空間における分布を示す分布情報を表示させる制御を行う分布情報表示制御手段、
    を更に備える請求項1から請求項13の何れか一項に記載のサーバシステム。
  15. 各プレーヤがプレーヤ端末を用いて共用ゲーム空間を移動可能なプレーヤキャラクタを操作し、マルチプレイによるゲームプレイを楽しむオンラインゲームを提供するサーバシステムと、前記プレーヤ端末とが通信接続されて構成されるゲームシステムにおける前記プレーヤ端末であって、
    前記プレーヤ端末には、ゲームプレイスペックが異なる端末があり、
    前記サーバシステムは、
    各プレーヤのプレーヤ端末の前記ゲームプレイスペックを表す情報を取得するゲームプレイスペック情報取得手段と、
    前記ゲームプレイを開始又は再開するスタートプレーヤについて、当該スタートプレーヤのプレーヤキャラクタの前記共用ゲーム空間中のスタート位置を、当該スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに基づいて決定するスタート位置決定手段と、
    を備え、
    当該プレーヤ端末のキャラクタの前記共用ゲーム空間中のスタート位置を、前記サーバシステムの前記スタート位置決定手段により決定されたスタート位置としてゲームプレイを開始又は再開する、プレーヤ端末。
  16. 各プレーヤがプレーヤ端末を用いて共用ゲーム空間を移動可能なプレーヤキャラクタを操作し、マルチプレイによるゲームプレイを楽しむオンラインゲームをコンピュータシステムが提供する提供方法であって、
    前記プレーヤ端末には、ゲームプレイスペックが異なる端末があり、
    各プレーヤのプレーヤ端末の前記ゲームプレイスペックを表す情報を取得するゲームプレイスペック情報取得ステップと、
    前記ゲームプレイを開始又は再開するスタートプレーヤについて、当該スタートプレーヤのプレーヤキャラクタの前記共用ゲーム空間中のスタート位置を、当該スタートプレーヤのプレーヤ端末の前記ゲームプレイスペックに基づいて決定するスタート位置決定ステップと、
    を含む提供方法。
JP2021160088A 2021-09-29 2021-09-29 サーバシステム、プレーヤ端末、及び提供方法 Pending JP2023049984A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021160088A JP2023049984A (ja) 2021-09-29 2021-09-29 サーバシステム、プレーヤ端末、及び提供方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021160088A JP2023049984A (ja) 2021-09-29 2021-09-29 サーバシステム、プレーヤ端末、及び提供方法

Publications (1)

Publication Number Publication Date
JP2023049984A true JP2023049984A (ja) 2023-04-10

Family

ID=85802172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021160088A Pending JP2023049984A (ja) 2021-09-29 2021-09-29 サーバシステム、プレーヤ端末、及び提供方法

Country Status (1)

Country Link
JP (1) JP2023049984A (ja)

Similar Documents

Publication Publication Date Title
US8628424B1 (en) Interactive spectator features for gaming environments
JP5677481B2 (ja) サーバシステムおよびプログラム
JP6271883B2 (ja) コンピュータシステムおよびプログラム
US20230043121A1 (en) Skill casting method and apparatus of virtual object, device, and storage medium
JP2023087059A (ja) コンピュータシステム、ゲームシステム、ゲーム実行制御方法及びプログラム
JP2014198169A (ja) サーバシステム
JP2023049984A (ja) サーバシステム、プレーヤ端末、及び提供方法
JP6296692B2 (ja) サーバシステム
KR20030069675A (ko) 다수 사용자용 온라인 게임내의 소규모 게임 운영 방법 및장치
CN111589114B (zh) 虚拟对象的选择方法、装置、终端及存储介质
WO2023053697A1 (ja) コンピュータシステム、ゲームシステム、プレーヤ端末、及び提供方法
JP6766238B1 (ja) プログラム、端末、ゲーム管理装置及びゲームシステム
KR102096856B1 (ko) 게임 매칭 장치 및 방법
JP2023049983A (ja) サーバシステム、プログラム、プレーヤ端末、及び提供方法
JP2023049985A (ja) サーバシステム、端末装置及び提供方法
CN113164815B (zh) 程序、终端、游戏系统以及游戏管理装置
WO2023189361A1 (ja) コンピュータシステム、仮想空間制御システムおよび制御方法
JP7376261B2 (ja) コンピュータシステム、ゲームシステム及びプログラム
JP7332521B2 (ja) サーバシステム、ゲームシステム及びプログラム
JP2018094429A (ja) コンピュータシステムおよびプログラム
JP7405556B2 (ja) コンピュータシステム、サーバシステム及びプログラム
JP7302956B2 (ja) コンピュータシステム、ゲームシステム及びプログラム
JP7255988B2 (ja) プログラム及びゲーム装置
JP2023049986A (ja) サーバシステム、端末装置及び提供方法
JP2023049987A (ja) サーバシステム、端末装置及び提供方法