(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-21
(45)【発行日】2023-09-29
(54)【発明の名称】システムレベルのマルチプレイヤーマッチメイキング
(51)【国際特許分類】
A63F 13/795 20140101AFI20230922BHJP
A63F 13/35 20140101ALI20230922BHJP
【FI】
A63F13/795
A63F13/35
(21)【出願番号】P 2021516351
(86)(22)【出願日】2019-09-13
(86)【国際出願番号】 US2019051150
(87)【国際公開番号】W WO2020060880
(87)【国際公開日】2020-03-26
【審査請求日】2022-08-01
(32)【優先日】2018-09-21
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】518187455
【氏名又は名称】ソニー・インタラクティブエンタテインメント エルエルシー
(74)【代理人】
【識別番号】100105924
【氏名又は名称】森下 賢樹
(72)【発明者】
【氏名】トロベッタ、スティーヴン
(72)【発明者】
【氏名】青木 俊雅
(72)【発明者】
【氏名】ウェッブ、ジョナサン
【審査官】前地 純一郎
(56)【参考文献】
【文献】特開2018-094208(JP,A)
【文献】特開2011-087715(JP,A)
【文献】特開2017-153783(JP,A)
【文献】特開2015-029837(JP,A)
【文献】米国特許第08425330(US,B1)
【文献】特開2014-035585(JP,A)
【文献】特開2015-150100(JP,A)
【文献】特開2013-165906(JP,A)
【文献】特開2007-215751(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-13/98
A63F 9/24
(57)【特許請求の範囲】
【請求項1】
システムレベルのマルチユーザマッチメイキングを提供するための方法であって、
現在のインタラクティブコンテンツタイトルに参加中のユーザのユーザデバイスからユーザ選択を受信することであって、前記ユーザ選択は、他のインタラクティブコンテンツタイトルに関連するマルチユーザアクティビティを指定する、前記受信することと、
前記選択されたアクティビティに関連付けられた複数のアクティブなマルチユーザセッションに関する情報を取得することと、
前記選択されたアクティビティに関連付けられたアクティビティテンプレートを取得することであって、前記取得されたアクティビティテンプレートは、前記選択されたアクティビティを起動するために必要なアクティビティ要件を提供する、前記取得することと、
前記取得されたアクティビティテンプレートによって提供される前記アクティビティ要件に少なくとも基づくセッション要件を有する新しいマルチユーザセッションを確立することと、
前記ユーザデバイスと、少なくとも1つの識別されたピアデバイスとを前記新しいマルチユーザセッションに追加することであって、前記少なくとも1つのピアデバイスは、前記セッション要件に基づいて識別される少なくとも1人のピアに関連付けられる、前記追加することと、
前記ユーザデバイスと、前記少なくとも1つの識別されたピアデバイスとのために確立された前記新しいマルチユーザセッションにおいて前記選択されたアクティビティを起動することと、
を含み、
前記新しいマルチユーザセッションは、前記他のインタラクティブコンテンツタイトルに関連付けられる、
方法。
【請求項2】
前記ユーザを前記複数のアクティブなマルチユーザセッションのうちの1つとマッチングさせることを試みることであって、前記ユーザが前記アクティブなマルチユーザセッションのうちのいずれにもマッチしない場合にマッチ無しが生じる、前記試みることをさらに含む、請求項1に記載の方法。
【請求項3】
前記ユーザに関連するユーザプロファイルを取得することであって、前記ユーザプロファイルは、前記ユーザ、前記ユーザデバイス、及び1つまたは複数の関連付けられた周辺デバイスに関するデータを提供する、前記取得することをさらに含み、前記ユーザデバイスを前記新しいマルチユーザセッションに追加することは、前記ユーザプロファイルに基づく、請求項1に記載の方法。
【請求項4】
前記少なくとも1人のピアに関連するピアプロファイルを取得することであって、前記ピアプロファイルは、前記少なくとも1人のピア及び前記ピアデバイスに関するデータを提供する、前記取得することをさらに含み、前記少なくとも1つのピアデバイスを前記新しいマルチユーザセッションに追加することは、前記ピアプロファイルを前記セッション要件と比較することを含む、請求項3に記載の方法。
【請求項5】
前記セッション要件は、前記選択されたアクティビティに参加するために必要なスキルレベルをさらに含む、請求項1に記載の方法。
【請求項6】
前記必要なスキルレベルは、前記ユーザのスキルレベルに基づく、請求項5に記載の方法。
【請求項7】
前記選択されたアクティビティは対戦マッチであり、前記少なくとも1つのピアデバイスは、既存のマルチユーザセッションに関連付けられている、請求項1に記載の方法。
【請求項8】
前記新しいマルチユーザセッションを前記少なくとも1つのピアデバイスの前記マルチユーザセッションとマッチングさせることをさらに含み、前記選択されたアクティビティを起動することは、前記マッチングしたマルチユーザセッションを前記新しいマルチユーザセッションに加入させることをさらに含む、請求項7に記載の方法。
【請求項9】
前記マルチユーザセッションはボイスチャットを含む、請求項1に記載の方法。
【請求項10】
システムレベルのマルチユーザマッチメイキングを提供するための方法であって、
インタラクティブコンテンツタイトルに参加中のユーザのユーザデバイスからユーザ選択を受信することであって、前記ユーザ選択は、ユーザのユーザデバイスから他のインタラクティブコンテンツタイトルのマルチユーザアクティビティを指定する、前記受信することと、
前記アクティビティに関連付けられた複数のアクティブなマルチユーザセッションを取得することであって、各アクティブなマルチユーザセッションはセッション要件を有する、前記取得することと、
前記ユーザに関連するユーザプロファイルを取得することであって、前記ユーザプロファイルは、前記ユーザ、前記ユーザデバイス、及び前記ユーザデバイスの1つまたは複数の周辺機器に関するデータを含む、前記取得することと、
前記ユーザデバイスを前記複数のアクティブなマルチユーザセッションのうちの識別されたアクティブなマルチユーザセッションとマッチングさせることを、前記識別されたアクティブなマルチユーザセッションの前記セッション要件と、前記ユーザプロファイルとの間のマッチに基づいて行うことと、
前記識別されたアクティブなマルチユーザセッションに前記ユーザデバイスを追加することと、
を含む、方法。
【請求項11】
前記識別されたアクティブなマルチユーザセッション内で前記選択されたアクティビティを起動することをさらに含み、前記識別されたアクティブなマルチユーザセッションは、前記他のインタラクティブコンテンツタイトルに関連付けられる、請求項10に記載の方法。
【請求項12】
前記選択されたアクティビティは対戦マッチであり、前記識別されたアクティブなマルチユーザセッションは、少なくとも1人のピアの少なくとも1つのピアデバイスを含む、請求項10に記載の方法。
【請求項13】
前記識別されたアクティブなマルチユーザセッション内で前記ユーザと前記少なくとも1人のピアとの間の前記対戦マッチを起動することをさらに含む、請求項12に記載の方法。
【請求項14】
前記セッション要件は、前記マルチユーザセッションに関連付けられた少なくとも1人のピアの少なくとも1つのピアデバイスに関連付けられたピアプロファイルに基づき、前記ピアプロファイルは、前記少なくとも1人のピア及び前記少なくとも1つのピアデバイスに関するデータを提供する、請求項10に記載の方法。
【請求項15】
前記セッション要件は、前記選択されたアクティビティを起動するために必要なアクティビティ要件にさらに基づく、請求項14に記載の方法。
【請求項16】
前記アクティビティ要件は、前記識別されたアクティブなマルチユーザセッション内の各ユーザ及び各ピアに同じタイプのデバイスを要求することを含む、請求項15に記載の方法。
【請求項17】
前記セッション要件は、前記選択されたアクティビティに参加するために必要なスキルレベルをさらに含む、請求項15に記載の方法。
【請求項18】
前記必要なスキルレベルは、前記少なくとも1人のピアのスキルレベルに基づく、請求項17に記載の方法。
【請求項19】
前記インタラクティブコンテンツタイトルはビデオゲームである、請求項10に記載の方法。
【請求項20】
システムレベルのマルチユーザマッチメイキングのためのシステムであって、
複数のインタラクティブコンテンツタイトルと、各インタラクティブコンテンツタイトルに関連付けられた1つまたは複数のアクティビティテンプレートとを記憶するメモリと、
通信ネットワークを介してユーザに関連付けられたユーザデバイスとのセッションを確立するネットワークインターフェースと、
メモリに記憶された命令を実行するプロセッサと、
を備え、前記プロセッサによる前記命令の実行は、
インタラクティブコンテンツタイトルに参加中の前記ユーザデバイスからユーザ選択を受信し、前記ユーザ選択は、他のインタラクティブコンテンツタイトルに関連するマルチユーザアクティビティを指定し、
前記選択されたアクティビティに関連付けられた複数のアクティブなマルチユーザセッションに関する情報を取得し、
前記選択されたアクティビティに関連付けられたメモリに記憶されたアクティビティテンプレートを取得し、前記取得されたアクティビティテンプレートは、前記選択されたアクティビティを起動するために必要なアクティビティ要件を提供し、
前記取得されたアクティビティテンプレートによって提供される前記アクティビティ要件に少なくとも基づくセッション要件を有する新しいマルチユーザセッションを確立し、
前記ユーザデバイスと、少なくとも1つの識別されたピアデバイスとを前記新しいマルチユーザセッションに追加し、前記少なくとも1つのピアデバイスは、前記セッション要件に基づいて識別される少なくとも1人のピアに関連付けられ、
前記ユーザデバイスと、前記少なくとも1つの識別されたピアデバイスとのために確立された前記新しいマルチユーザセッションにおいて前記選択されたアクティビティを起動し、
前記新しいマルチユーザセッションは、前記他のインタラクティブコンテンツタイトルに関連付けられる、
システム。
【請求項21】
システムレベルのマルチユーザマッチメイキングを提供するための方法を実施するためにプロセッサによって実行可能なプログラムが具現化された非一時的コンピュータ可読媒体であって、前記方法は、
インタラクティブコンテンツタイトルに参加中のユーザのユーザデバイスからユーザ選択を受信することであって、前記ユーザ選択は、他のインタラクティブコンテンツタイトルに関連するマルチユーザアクティビティを指定する、前記受信することと、
前記選択されたアクティビティに関連付けられた複数のアクティブなマルチユーザセッションに関する情報を取得することと、
前記選択されたアクティビティに関連付けられたアクティビティテンプレートを取得することであって、前記取得されたアクティビティテンプレートは、前記選択されたアクティビティを起動するために必要なアクティビティ要件を提供する、前記取得することと、
前記取得されたアクティビティテンプレートによって提供される前記アクティビティ要件に少なくとも基づくセッション要件を有する新しいマルチユーザセッションを確立することと、
前記ユーザデバイスと、少なくとも1つの識別されたピアデバイスとを前記新しいマルチユーザセッションに追加することであって、前記少なくとも1つのピアデバイスは、前記セッション要件に基づいて識別される少なくとも1人のピアに関連付けられる、前記追加することと、
前記ユーザデバイスと、前記少なくとも1つの識別されたピアデバイスとのために確立された前記新しいマルチユーザセッションにおいて前記選択されたアクティビティを起動することと、
を含み、
前記新しいマルチユーザセッションは、前記他のインタラクティブコンテンツタイトルに関連付けられる、
非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、マルチプレイヤーマッチメイキングの提供に関する。より詳細には、本技術は、システムレベルのマルチプレイヤーマッチメイキングを提供し得る。
【背景技術】
【0002】
マルチユーザのゲームプレイは、人気があり絶えず成長しているゲームプレイのセグメントである。マルチユーザのゲームプレイでは、通常、ユーザは適切なピアのグループとのマッチを見つける必要がある。現在利用可能なマッチメイキングサービスは、ゲーム内で、ユーザがそのようなゲームを起動した後に実行され得、その後、ユーザが起動した異なるゲームタイトルごとに別々に実行され得る。そのようなマッチメイキングは、ゲームごとに異なるマッチメイキングの方法を使用し得る。さらに、マルチユーザマッチメイキングを実行する手順は、各ゲームで異なり得る。また、現在利用可能なマッチメイキングは、ユーザ及び/またはピアからの限られた情報に基づいて実行され得る。
【0003】
マルチユーザゲーム、及び設定されたピア(たとえば、フレンド)のグループとのゲームプレイの人気により、大幅な遅延と、各ゲームでの繰り返しの手順及び/または異なる手順とが、ユーザ体験に重大な影響を与える可能性がある。そのようなマッチメイキングは、たとえば、遅延を引き起こすことによって(たとえば、ユーザがゲームもしくはセッションを変更するたびにマッチメイキングを行う必要がある場合)ユーザ体験を損ね得、及び/または、ピアの経験とユーザの経験との差が大きいために、マッチメイキングが不十分である。さらに、場合によっては、そのようなマッチメイキングは、定期的に異なるゲームを一緒にプレイするプレーヤーのグループに対して繰り返されなければならず、その結果、ゲームプレイがさらに遅延する。
【0004】
したがって、当技術分野では、システムレベルのマルチユーザマッチメイキングのためのシステム及び方法が必要とされている。
【発明の概要】
【0005】
本発明の実施形態は、システムレベルのマルチユーザマッチメイキングのためのシステム及び方法を含む。インタラクティブコンテンツタイトル、アクティビティテンプレート、及びマルチユーザセッションに関するデータがメモリに記憶され得る。アクティビティテンプレートは、インタラクティブコンテンツタイトルに関連付けられ得、アクティビティ要件を含み得る。アクティビティのユーザ選択が受信され得る。選択されたアクティビティに関連付けられた複数のアクティブなマルチユーザセッションが取得され得る。新しいマルチユーザセッションが確立され得る。新しいマルチユーザセッションは、取得されたアクティビティテンプレートによって提供されるアクティビティ要件に少なくとも基づき得るセッション要件を有し得る。ユーザデバイスと、少なくとも1つのピアデバイスとが、新しいマルチユーザセッションに追加され得る。少なくとも1つのピアデバイスは、セッション要件に基づいて識別される少なくとも1人のピアに関連付けられ得る。選択されたアクティビティは、新しいマルチユーザセッションにおいて起動され得る。
【0006】
様々な実施形態は、システムレベルのマルチユーザマッチメイキングのための方法を含み得る。そのような方法は、ユーザのユーザデバイスからユーザ選択を受信することを含み得る。ユーザ選択は、インタラクティブコンテンツタイトルに関連するマルチユーザアクティビティを指定し得る。そのような方法は、選択されたアクティビティに関連付けられた複数のアクティブなマルチユーザセッションに関する情報を取得することを含み得る。そのような方法は、選択されたアクティビティに関連付けられたアクティビティテンプレートを取得することを含み得る。取得されたアクティビティテンプレートは、選択されたアクティビティを起動するために必要なアクティビティ要件を提供し得る。そのような方法は、取得されたアクティビティテンプレートによって提供されるアクティビティ要件に少なくとも基づくセッション要件を有する新しいマルチユーザセッションを確立することを含み得る。そのような方法は、ユーザデバイスと、少なくとも1つの識別されたピアデバイスとを新しいマルチユーザセッションに追加することを含み得る。少なくとも1つのピアデバイスは、セッション要件に基づいて識別される少なくとも1人のピアに関連付けられ得る。そのような方法は、ユーザデバイスと、少なくとも1つの識別されたピアデバイスとのために確立された新しいマルチユーザセッションにおいて選択されたアクティビティを起動することを含み得る。
【0007】
追加の実施形態は、システムレベルのマルチユーザマッチメイキングのためのシステムを含み得る。そのようなシステムは、複数のインタラクティブコンテンツタイトルと、各インタラクティブコンテンツタイトルに関連付けられた1つまたは複数のアクティビティテンプレートとを記憶するメモリを含み得る。そのようなシステムは、通信ネットワークを介してユーザに関連付けられたユーザデバイスとのセッションを確立するネットワークインターフェースを含み得る。そのようなシステムは、メモリに記憶された命令を実行するプロセッサを含み得る。プロセッサによる命令の実行は、ユーザデバイスからユーザ選択を受信し得る。ユーザ選択は、インタラクティブコンテンツタイトルに関連するマルチユーザアクティビティを指定し得る。プロセッサによる命令の実行は、選択されたアクティビティに関連付けられた複数のアクティブなマルチユーザセッションに関する情報を取得し得る。プロセッサによる命令の実行は、選択されたアクティビティに関連付けられたメモリに記憶されたアクティビティテンプレートを取得し得る。取得されたアクティビティテンプレートは、選択されたアクティビティを起動するために必要なアクティビティ要件を提供し得る。プロセッサによる命令の実行は、取得されたアクティビティテンプレートによって提供されるアクティビティ要件に少なくとも基づくセッション要件を有する新しいマルチユーザセッションを確立し得る。プロセッサによる命令の実行は、ユーザデバイスと、少なくとも1つの識別されたピアデバイスとを新しいマルチユーザセッションに追加し得る。少なくとも1つのピアデバイスは、セッション要件に基づいて識別される少なくとも1人のピアに関連付けられ得る。プロセッサによる命令の実行は、ユーザデバイスと、少なくとも1つの識別されたピアデバイスとのために確立された新しいマルチユーザセッションにおいて選択されたアクティビティを起動し得る。
【0008】
さらなる実施形態は、システムレベルのマルチユーザマッチメイキングを実施するためにプロセッサによって実行可能なプログラムが具現化された非一時的コンピュータ可読記憶媒体を含む。
【図面の簡単な説明】
【0009】
【0010】
【
図1】システムレベルのマルチユーザマッチメイキングのためのシステムが実装され得るネットワーク環境を示す図である。
【0011】
【
図2】既存のマルチユーザセッションとのマッチが発生しない場合のシステムレベルのマルチユーザマッチメイキングのための例示的な方法を示すフローチャートである。
【0012】
【
図3】既存のマルチユーザセッションとのマッチが発生する場合のシステムレベルのマルチユーザマッチメイキングのための例示的な方法を示すフローチャートである。
【0013】
【0014】
【
図4】システムレベルのマルチユーザマッチメイキングを提供する際に使用され得る例示的な電子エンターテインメントシステムの図である。
【発明を実施するための形態】
【0015】
下記の詳細な説明は、本主題技術の様々な構成について説明することを意図したものであり、本技術を実施可能な唯一の構成を示すことを意図したものではない。添付の図面は本明細書に組み込まれ、詳細な説明の一部を構成する。この詳細な説明には、本技術をより十分に理解するための特定の詳細が含まれている。しかしながら、本技術が、本明細書に記載した特定の詳細に限定されるものではなく、これらの詳細がなくとも実施され得ることは明確かつ明らかであろう。いくつかの例では、本主題技術の概念を曖昧にすることを避けるために、構造及び構成要素をブロック図形式で示している。
【0016】
本発明の実施形態は、システムレベルのマルチユーザマッチメイキングのためのシステム及び方法を含む。ユーザは、複数のユーザがアクティビティに参加する必要があるアクティビティを選択し得る。そのようなアクティビティは、インタラクティブコンテンツタイトルに関連し得る。ユーザは、選択したアクティビティに関連付けられた既存のアクティブなマルチユーザセッションとマッチングされ得、または、ユーザが既存のマルチユーザセッションとマッチしない場合、新しいマルチユーザセッションが生成され得る。そのようなマルチユーザセッションは、特定のマルチユーザセッションに加入するためにユーザ及び/またはピアが有する必要のあるセッション要件または資格を含み得る。
【0017】
図1は、システムレベルのマルチユーザマッチメイキングのためのシステムが存在し得るネットワーク環境100を示している。ネットワーク環境100は、インタラクティブコンテンツ(たとえば、ビデオゲーム、インタラクティブビデオなど)を提供する1つまたは複数のインタラクティブコンテンツソースサーバ110と、プラットフォームサーバ120と、1つまたは複数のユーザデバイス140とを含み得る。
【0018】
インタラクティブコンテンツソースサーバ110は、通信ネットワークを介してユーザデバイス140がプレイ可能なインタラクティブコンテンツタイトルを維持及びホストし得る。そのようなインタラクティブコンテンツサーバ110は、クラウド(たとえば、1つまたは複数のクラウドサーバ)に実装され得る。各インタラクティブコンテンツタイトルは、そのコンテンツタイトル内で利用可能な1つまたは複数のアクティビティを含み得る。1つまたは複数のアクティビティは、単一のユーザまたは複数のユーザによってプレイ可能であり得る。各インタラクティブコンテンツタイトルは、そのコンテンツタイトル内で利用可能な1つまたは複数のアクティビティに対応する1つまたは複数のテンプレートを含み得る。各テンプレートは、対応するアクティビティに関する構造化されたデータセットを提供し、対応するアクティビティに関する情報をリアルタイムに追跡及び表示するための基礎として使用され得る。
【0019】
一例では、インタラクティブコンテンツタイトルはビデオゲームタイトルであり、1つまたは複数のテンプレートは、そのゲームタイトル内で利用可能な対戦ゲームプレイの異なるモードに対応し得る。他の例では、1つまたは複数のテンプレートは、インタラクティブなストーリーラインの異なるチャプターに対応し得る。各テンプレートは、インタラクティブコンテンツタイトル内で対応するアクティビティが開始するインタラクティブコンテンツタイトルの一部分に関連付けられ得る。たとえば、テンプレートは、アクティビティが開始する、ゲームの一部分の中の(たとえば、ゲームのストーリーラインの特定の時点における特定のゲーム環境の場所にある)中間地点を含み得る。他の例では、テンプレートは、関連付けられたアクティビティの開始地点に最も近いゲーム環境内の場所にユーザのキャラクターを仮想的にテレポートさせ得る。また、テンプレートをマッチメイキングに関連付けて、ユーザを(たとえば、他のピアのスキル、経験レベル、または空き状況によって)対戦マッチに割り当てるようにし得る。さらに、マッチメイキングに関連付けられたそのようなテンプレートは、選択されたアクティビティ(たとえば、対戦マッチ)を起動するために必要なアクティビティ要件(たとえば、最大及び/または最小のプレーヤー数、スキルレベル及び/またはランク、キャラクターレベル及び/またはランク、ユーザデバイス要件など)を提供し得る。各テンプレートは更新、編集、もしくは削除され得、または新しいテンプレートが作成され得る。1つまたは複数のテンプレートは、インタラクティブコンテンツソースサーバ110またはプラットフォームサーバ120に記憶され、そこから取得され得る。
【0020】
プラットフォームサーバ120は、選択されたアクティビティに関連付けられた複数のアクティブなマルチユーザセッションのうちの1つにユーザをマッチングさせるために、異なるインタラクティブコンテンツソースサーバ110と通信することを担当し得る。そのようなプラットフォームサーバ120は、1つまたは複数のクラウドサーバ上に実装され得る。インタラクティブコンテンツソースサーバ110は、複数のプラットフォームサーバ120と通信し得る。また、プラットフォームサーバ120は、たとえば、セッション要件を有するマルチユーザセッションを生成するための命令を実行し得る。そのようなセッション要件は、選択されたアクティビティに関連付けられたテンプレートのアクティビティ要件(たとえば、最大及び/または最小のプレーヤー数、スキルレベル及び/またはランク、キャラクターレベル及び/またはランク、ユーザデバイス要件など)に基づき得る。マルチユーザセッションは、ユーザまたはピアに関連付けられたプラットフォームサーバ120によって確立され得る。そのようなマルチユーザセッションは、2人以上のユーザを含むことができ、マルチユーザセッション内でユーザ間のコミュニケーション(たとえば、ボイスチャット、ビデオチャット、ダイレクトメッセージ、テキストチャットなど)を提供することができる。さらに、プラットフォームサーバ120は、たとえば、アクティビティテンプレートに従ってマルチユーザセッション内で選択されたアクティビティを自動的に起動する命令を実行し得る。
【0021】
インタラクティブコンテンツタイトル及びそれらに対応するアクティビティは、アプリケーションプログラミングインターフェース(API)130を介して提供され得、これにより、様々なタイプのインタラクティブコンテンツソースサーバ110は、異なるプラットフォームサーバ120及び異なるユーザデバイス140と通信することが可能になる。API130は、インタラクティブコンテンツタイトルを提供するインタラクティブコンテンツソースサーバ110と、関連付けられたテンプレートを提供するプラットフォームサーバ120と、それらを受信するユーザデバイス140との特定のコンピュータプログラミング言語、オペレーティングシステム、プロトコルなどに専用のものであり得る。複数の異なるタイプのインタラクティブコンテンツソースサーバ110(もしくはプラットフォームサーバ120またはユーザデバイス140)を含むネットワーク環境100では、同様に対応する数のAPI130が存在し得る。
【0022】
ユーザデバイス140は、複数の異なるタイプのコンピューティングデバイスを含み得る。たとえば、ユーザデバイス140は、任意の数の異なるゲームコンソール、モバイルデバイス、ラップトップ、及びデスクトップを含み得る。また、そのようなユーザデバイス140は、ダウンロード型のサービスの場合に適切であり得るメモリカードまたはディスクドライブなどであるが、これらに限定されない他の記憶媒体からデータにアクセスするように構成され得る。そのようなデバイス140は、ネットワークインターフェース及びメディアインターフェース、非一時的コンピュータ可読ストレージ(メモリ)、ならびにメモリに記憶され得る命令を実行するためのプロセッサなどであるが、これらに限定されない標準的なハードウェアコンピューティングコンポーネントを含み得る。また、これらのユーザデバイス140は、様々な異なるオペレーティングシステム(たとえば、iOS、Android(登録商標))、アプリケーション、またはコンピューティング言語(たとえば、C++、Java(登録商標)Script)を使用して動作し得る。例示的なユーザデバイス140については、
図4に関して本明細書で詳細に説明する。
【0023】
図2は、ユーザと既存のマルチユーザセッションとのマッチが発生しない場合のシステムレベルのマルチユーザマッチメイキングのための例示的な方法200を示すフローチャートである。
図2の方法200は、CD、DVD、またはハードトライブ等の不揮発性メモリを含むがこれらに限定されない非一時的コンピュータ可読記憶媒体内の実行可能な命令として具現化され得る。記憶媒体の命令は、記憶媒体をホストするかまたは別の方法でこれにアクセスするコンピューティングデバイスの様々なハードウェアコンポーネントに本方法を実施させるために、プロセッサ(または複数のプロセッサ)によって実行され得る。命令の実行は、クラウドサーバ上で実施され得る(たとえば、
図2に示したステップはクラウドで実行される)。
図2に示したステップ(及びそれらの順序)は例示的なものであり、それらの実行順序を含むがこれに限定されないそれらの様々な代替物、均等物、または派生物を含み得る。
【0024】
ステップ210において、インタラクティブコンテンツタイトルに関連するアクティビティのユーザ選択が、プラットフォームサーバ120によって受信される。そのようなアクティビティは、複数のユーザの参加を必要とするアクティビティ(たとえば、ダンジョン、マルチユーザクエスト、対戦マッチなど)であり得る。そのような選択は、ユーザが同じまたは異なるインタラクティブコンテンツタイトルの異なるアクティビティに参加している間に行われ得る。
【0025】
ステップ220において、アクティビティに関連付けられた複数のアクティブなマルチユーザセッションに関連するデータが、プラットフォームサーバ120によってインタラクティブコンテンツソースサーバ110から取得され得る。そのようなデータは、マッチメイキングに利用可能な各アクティブなマルチユーザセッションに関するデータを含み得る。そのようなアクティブなマルチユーザセッションは、様々な進行状態にあり得る(たとえば、指定されたアクティビティに参加するために、1人のユーザを必要とし得、または複数のユーザを必要とし得る、など)。また、そのようなアクティブなマルチユーザセッションは、アクティブなマルチユーザセッションに加入できるユーザを制限するセッション要件を有し得る。たとえば、マルチユーザセッションは、ユーザのキャラクターが最低限のスキルレベルを有することを要求し得る。
【0026】
ステップ230において、プラットフォームサーバ120によって、ユーザ選択に関連付けられたユーザと、複数のアクティブなマルチユーザセッションとの間でマッチングが行われ得る。そのようなマッチングは、ユーザと、各アクティブなマルチユーザセッションに関するデータとに基づき得る。マッチング中に(これはバックグラウンドで行われ得る)、ユーザは他のインタラクティブコンテンツタイトルの他のアクティビティに引き続き参加し得る。そのようなマッチングは、ユーザがアクティブなマルチユーザセッションのうちのいずれにもマッチしない場合に、マッチ無しを生じ得る。たとえば、ユーザがいかなるアクティブなマルチユーザセッションのセッション要件も満たさない場合、マッチ無しが発生し得る。マッチ無しが発生した場合、以下で説明するように、新しいマルチユーザセッションが確立され得る。そのようなマッチメイキングは、ユーザデバイスが同じまたは異なるゲームタイトルの関連するまたは関連しないアクティビティに参加しているときに、バックグラウンドで行われ得る。したがって、プラットフォームサーバ120はさらに、アクティブゲームセッション及びそのステータスに関する情報をリアルタイムまたはほぼリアルタイムに維持し得る。さらに、既にマルチユーザセッションに参加しているユーザデバイスは、セッションが行方不明のプレーヤーとマッチングされることを回避するために、バックグラウンドのマッチメイキングを開始することを許可されなくてもよい。いくつかの実施形態では、ユーザデバイスは、現在のセッションを退出するまで待機状態に置かれ得る。
【0027】
ステップ240において、インタラクティブコンテンツソースサーバ110に記憶された、選択されたアクティビティに関連付けられたアクティビティテンプレートが、プラットフォームサーバ120によって取得され得る。そのようなアクティビティテンプレートは、選択されたアクティビティを起動するために必要なアクティビティ要件を含み得る。そのようなアクティビティ要件は、アクティビティを開始するために必要な最大及び/または最小ユーザ数に加えて、ハードウェア、ソフトウェア、ユーザ、及び/またはピアの要件を考慮し得る。
【0028】
ステップ250において、セッション要件を有するマルチユーザセッションが、プラットフォームサーバ120またはインタラクティブコンテンツソースサーバ110によって確立され得る。そのようなセッション要件は、取得されたアクティビティ要件に基づき得る。たとえば、アクティビティ要件は、ひいてはセッション要件は、4人のユーザそれぞれが特定のユーザデバイス(たとえば、Sony PlayStation(登録商標))を使用することを要求し得る。また、そのようなセッション要件は、ユーザに関連するユーザプロファイルに基づき得る。そのようなユーザプロファイルは、プラットフォームサーバ120またはユーザデバイス140のメモリに記憶され得る。そのようなユーザプロファイルには、ユーザデータ(たとえば、ピアスキル、キャラクターレベル及び/またはスキル、プレイ時間、プレイしたゲームのタイプなど)、関連付けられたユーザデバイスに関するデータ(たとえば、ハードウェアコンポーネント及び機能、ソフトウェア、ルータ情報、地理的位置など)、ならびに/あるいはユーザデバイスの周辺機器(たとえば、マイクロフォン、カメラ、マウス、コントローラ、デバイスなど)が含まれ得る。たとえば、セッション要件は、ピアのキャラクターがユーザのキャラクターのレベルと一致するかまたはこれを超過することを要求し得る。他の例では、セッション要件は、ユーザデバイスがホスト任務を実行可能であることを要求し得、ホスト任務はユーザプロファイルによってユーザデバイス機能に関して示され得る。
【0029】
ステップ260において、ユーザ及び少なくとも1人のピアユーザは、プラットフォームサーバ120によってマルチユーザセッションに追加され得る。ピアは、ピア(ならびに/あるいはピアデバイス及び周辺機器)がセッション要件を満たすことに基づいて追加され得る。そのようなマッチは、ピアに関連するピアプロファイルを取得することを含み得る。そのようなピアプロファイルは、プラットフォームサーバ120またはユーザデバイス140のメモリに記憶され得る。そのようなピアプロファイルには、ピアデータ(たとえば、ピアスキル、キャラクターレベル及び/またはスキル、プレイ時間、プレイしたゲームのタイプなど)、関連付けられたピアデバイスに関するデータ(たとえば、ハードウェアコンポーネント及び機能、ソフトウェア、ルータ情報、地理的位置など)、ならびに/あるいはピアデバイスの周辺機器(たとえば、マイクロフォン、カメラ、マウス、コントローラ、デバイスなど)が含まれ得る。そのようなピアプロファイルは、マルチユーザセッションの複数のピアをランク付けするために使用され得、選択されたピアがマルチユーザセッションから自分を削除した場合に、バックアップピアを提供することができる。たとえば、7人のピアが、3人のピアを必要とするマルチユーザセッションとマッチングし得る。マルチユーザセッションに加入する3人のピアが選択され得、残りの4人のピアをランク付けして、どの残りのピアが、マルチユーザセッションを離脱し得るピアと交代し得るかを決定し得る。
【0030】
ステップ270において、選択されたアクティビティが、マルチユーザセッション内でインタラクティブコンテンツソースサーバ110またはプラットフォームサーバ120によって起動され得る。そのような起動されたアクティビティは、2人以上の参加者を必要とする対戦マッチであり得、それにより、(異なるマルチユーザセッションに存在し得る)異なるユーザと、対戦マッチとのマッチメイキングを必要とする。そのような対戦マッチは、どのマルチユーザセッションを加入させて、それぞれのユーザを対戦マッチに参加できるようにすることができるかに関する対戦マッチ要件を有し得る。そのような対戦マッチでは、各マルチユーザセッション内のユーザ及びピアと、対戦マッチ要件とに基づいて、1つまたは複数のマルチユーザセッションが対戦マッチとマッチングされる。たとえば、第1のマルチユーザセッションのユーザと第2のマルチユーザセッションのユーザとの間の類似性に基づいて、第1のマルチユーザセッション及び第2のマルチユーザセッションが対戦マッチのために識別され得る。次に、そのような第1のマルチユーザセッション及び第2のマルチユーザセッションをマージするかまたは別の方法で関連付けることができ、その結果、それぞれのユーザが、同じ対戦マッチに参加することができる(たとえば、互いに競争するか、または協力して共通の第三者(たとえば、ボス、他のマルチユーザセッションなど)と戦う)。
【0031】
図3は、ユーザと既存のマルチユーザセッションとのマッチが発生する場合のシステムレベルのマルチユーザマッチメイキングのための例示的な方法300を示すフローチャートである。
図3の方法300は、CD、DVD、またはハードトライブ等の不揮発性メモリを含むがこれらに限定されない非一時的コンピュータ可読記憶媒体内の実行可能な命令として具現化され得る。記憶媒体の命令は、記憶媒体をホストするかまたは別の方法でこれにアクセスするコンピューティングデバイスの様々なハードウェアコンポーネントに本方法を実施させるために、プロセッサ(または複数のプロセッサ)によって実行され得る。命令の実行は、クラウドサーバ160上で実施され得る(たとえば、
図3に示したステップはクラウドで実行される)。
図3に示したステップ(及びそれらの順序)は例示的なものであり、それらの実行順序を含むがこれに限定されないそれらの様々な代替物、均等物、または派生物を含み得る。
【0032】
ステップ310において、インタラクティブコンテンツタイトルに関連するアクティビティのユーザ選択が、プラットフォームサーバ120によって受信される。そのようなアクティビティは、複数のユーザの参加を必要とするアクティビティ(たとえば、ダンジョン、マルチユーザクエスト、対戦マッチなど)であり得る。
【0033】
ステップ320において、アクティビティに関連付けられた複数のアクティブなマルチユーザセッションが、プラットフォームサーバ120によってインタラクティブコンテンツソースサーバ110から取得され得る。上述のように、そのようなアクティブなマルチユーザセッションは、様々な進行状態にあり得る(たとえば、1人または複数のユーザを必要とし得る)。また、そのようなアクティブなマルチユーザセッションは、アクティブなマルチユーザセッションに加入できるユーザを制限するセッション要件を有し得る。たとえば、(たとえば、特定のゲームタイトル内の特定のアクティビティの)マルチユーザセッションは、ユーザのキャラクターが最低限のスキルレベルを有することを要求し得る。また、そのようなセッション要件は、マルチユーザセッションに既に加入している対応する1人または複数のピアの1つまたは複数のピアプロファイルに基づき得る。そのようなピアプロファイルには、各ピアに関するピアデータ(たとえば、ピアスキル、キャラクターレベル及び/またはスキル、プレイ時間、プレイしたゲームのタイプなど)、関連付けられたピアデバイス(たとえば、ハードウェアコンポーネント及び機能、ソフトウェア、ルータ情報、地理的位置など)、ならびに/あるいはピアデバイスの周辺機器(たとえば、マイクロフォン、カメラ、マウス、コントローラ、デバイスなど)が含まれ得る。
【0034】
ステップ330において、ユーザに関連するユーザプロファイルが、プラットフォームサーバ120によって、プラットフォームサーバ120またはユーザデバイス140に記憶されたメモリから取得され得る。そのようなユーザプロファイルには、ユーザに関するユーザデータ(たとえば、ピアスキル、キャラクターレベル及び/またはスキル、プレイ時間、プレイしたゲームのタイプなど)、関連付けられたユーザデバイス(たとえば、ハードウェアコンポーネント及び機能、ソフトウェア、ルータ情報、地理的位置など)、ならびに/あるいはユーザデバイスの周辺機器(たとえば、マイクロフォン、カメラ、マウス、コントローラ、デバイスなど)が含まれ得る。
【0035】
ステップ340において、ユーザは、プラットフォームサーバ120によってマルチユーザセッションのうちの1つとマッチングされ得、ステップ350において、ユーザデバイスは、プラットフォームサーバ120によって、マッチングしたマルチユーザセッションに追加され得る。そのようなマッチは、セッション要件と、ユーザプロファイルからのユーザデータ、ユーザデバイスデータ、及び/またはユーザデバイス周辺機器データとの間のマッチに基づき得る。たとえば、セッション要件は、ユーザが選択したアクティビティに以前に参加したことを要求し得、ユーザデータは、ユーザが選択したアクティビティに複数回参加したことを示し得る。そのようなセッション要件は、選択したアクティビティの経験のあるユーザがマルチユーザセッションに加入することが要求または所望されていることを示し得る。
【0036】
選択されたアクティビティが完了した後、マルチユーザセッションは、選択されたアクティビティの外部でそのまま残り得る。その後、マルチユーザセッションのユーザまたはピアは、一緒に参加する他のアクティビティを選択し得る。たとえば、ユーザ及びピアは、同じシステムレベルのボイスチャットグループ(または他の定義済みグループ)に属し得る。そのような選択されたアクティビティは、マルチユーザセッションと選択されたアクティビティとの間のさらなるマッチメイキングを要求してもしなくてもよい。そのようなマルチユーザセッションにより、ユーザ及びピアは、アクティビティを出入りするときに一緒にいることが可能になる。そのため、ユーザ及びピアは、異なるアクティビティごとに個別のマッチメイキングに取り組む必要はない。換言すれば、ユーザは同じマルチユーザセッション及びピアで複数の異なるアクティビティに参加することができるので、新しいアクティビティごとに各ユーザ及び各ピアが個別にマッチメイキングを行う従来の手順が不要になる。
【0037】
プラットフォームサーバ120においてマルチユーザマッチメイキングを実行することは、マッチメイキングの前にインタラクティブタイトルを起動する段階を排除することによって、複数のユーザの参加が必要なアクティビティに参加するための手順をさらに簡略化し得る。別の言い方をすれば、ユーザは、プラットフォームサーバ120上のユーザインターフェースからマルチユーザアクティビティテンプレートを選択するだけで、マッチメイキングが開始される。マッチメイキングが完了した後、マルチユーザアクティビティが起動し、ユーザはマルチユーザアクティビティとの即時のインタラクションを開始することができ、これにより、インタラクティブコンテンツタイトルを起動し、マルチユーザアクティビティを選択し、インタラクティブコンテンツタイトル内でマッチメイキングが行われるのを待つという従来の手順を迂回することができる。
【0038】
図4は、インタラクティブコンテンツを起動し、動的インターフェースを提供する際に使用され得る例示的なユーザ電子エンターテインメントシステムである。
図4のエンターテインメントシステム400は、メインメモリ405、中央処理装置(CPU)410、ベクトルユニット415、グラフィック処理ユニット420、入出力(I/O)プロセッサ425、I/Oプロセッサメモリ430、周辺インターフェース435、メモリカード440、ユニバーサルシリアルバス(USB)インターフェース445、及び通信ネットワークインターフェース450を含む。エンターテインメントシステム400はさらに、オペレーティングシステム読み取り専用メモリ(OS ROM)455、音声処理ユニット460、光ディスク制御ユニット470、及びハードディスクドライブ465を含み、これらはバス475を介してI/Oプロセッサ425に接続される。
【0039】
エンターテインメントシステム400は、電子ゲームコンソールであり得る。あるいは、エンターテインメントシステム400は、汎用コンピュータ、セットトップボックス、ハンドヘルドゲームデバイス、タブレットコンピューティングデバイス、バーチャルリアリティデバイス、拡張現実デバイス、またはモバイルコンピューティングデバイスもしくは携帯電話として実装され得る。エンターテインメントシステムは、特定のフォームファクタ、目的、または設計に応じて、より多くのまたはより少ない動作コンポーネントを含み得る。
【0040】
図4のCPU410、ベクトルユニット415、グラフィック処理ユニット420、及びI/Oプロセッサ425は、システムバス485を介して通信する。さらに、
図4のCPU410は専用バス480を介してメインメモリ405と通信し、ベクトルユニット415及びグラフィック処理ユニット420は専用バス490を介して通信し得る。
図4のCPU410は、OS ROM455及びメインメモリ405に記憶されたプログラムを実行する。
図4のメインメモリ405は、予め記憶されたプログラムと、光ディスク制御ユニット470を使用してCD-ROM、DVD-ROM、または他の光ディスク(図示せず)からI/Oプロセッサ425を介して転送されるプログラムとを含み得る。
図4のI/O プロセッサ425はまた、無線または他の通信ネットワーク(たとえば、4G、LTE、1G等)を介して転送されるコンテンツの導入を可能にし得る。
図4のI/Oプロセッサ425は主に、CPU410、ベクトルユニット415、グラフィック処理ユニット420、及び周辺インターフェース435を含むエンターテインメントシステム400の種々のデバイス間のデータ交換を制御する。
【0041】
図4のグラフィック処理ユニット420は、CPU410及びベクトルユニット415から受信したグラフィック命令を実行して、表示デバイス(図示せず)上に表示するための画像を生成する。たとえば、
図4のベクトルユニット415は、3次元座標から2次元座標にオブジェクトを変換し、2次元座標をグラフィック処理ユニット420に送信し得る。さらに、音声処理ユニット460は、命令を実行して音声信号を生成し、音声信号はスピーカ(図示せず)などの音声デバイスに出力される。他のデバイスは、USBインターフェース445、及び無線トランシーバなどの通信ネットワークインターフェース450を介してエンターテインメントシステム400に接続され得、これらはシステム400に組み込まれるか、またはプロセッサなどの他の何らかのコンポーネントの一部であり得る。
【0042】
図4のエンターテインメントシステム400のユーザは、周辺インターフェース435を介して命令をCPU410に提供し、これにより、当技術分野で知られている様々な異なる利用可能な周辺デバイス(たとえば、コントローラ)の使用が可能になる。たとえば、ユーザは、メモリカード440もしくは他の非一時的コンピュータ可読記憶媒体に特定のゲーム情報を記憶するように、またはゲームのキャラクタに何らかの指定されたアクションを行うように指示するよう、CPU410に命令し得る。
【0043】
本発明は、様々なエンドユーザデバイスによって動作可能であり得るアプリケーションで実施され得る。たとえば、エンドユーザデバイスは、パーソナルコンピュータ、ホームエンターテインメントシステム(たとえば、Sony PlayStation2(登録商標)、もしくはSony PlayStation3(登録商標)、またはSony PlayStation4(登録商標))、ポータブルゲームデバイス(たとえば、Sony PSP(登録商標)またはSony Vita(登録商標))、または劣ってはいるが異なる製造業者のホームエンターテインメントシステムであり得る。本明細書に記載の本方法論は、様々なデバイス上で動作可能であることを十分に意図している。また、本発明はタイトルを超えた中立性をもって実施され得、本システムの一実施形態が様々な発行者からの様々なタイトルにわたって利用され得る。
【0044】
本発明は、様々なデバイスを使用して動作可能であり得るアプリケーションで実施され得る。非一時的コンピュータ可読記憶媒体とは、命令を実行のために中央処理装置(CPU)に提供することに関与する任意の媒体または複数の媒体を指す。そのような媒体は多くの形態をとることができ、たとえば、限定はしないが、不揮発性媒体及び揮発性媒体であり、たとえば、それぞれ、光学または磁気ディスク及びダイナミックメモリなどである。非一時的コンピュータ可読記憶媒体の一般的な形態には、たとえば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、他の任意の磁気媒体、CD-ROMディスク、デジタルビデオディスク(DVD)、他の任意の光学媒体、RAM、PROM、EPROM、FLASHEPROM、及び他の任意のメモリチップまたはカートリッジが含まれる。
【0045】
様々な形態の伝送媒体は、1つまたは複数の命令の1つまたは複数のシーケンスを実行のためにCPUに伝達することに関与し得る。バスはデータをシステムRAMに伝達し、そこからCPUが命令を取得して実行する。システムRAMによって受信された命令は、任意選択的に、CPUによって実行される前または後に、固定ディスク上に記憶することができる。様々な形態のストレージが同様に、その実装に必要なネットワークインターフェース及びネットワークトポロジと共に実装され得る。
【0046】
本技術の前述の詳細な説明は、例示及び説明の目的で提示している。これは包括的であることも、本技術を開示した詳細な形態に限定することも意図するものではない。上記の教示に照らして、多くの変更形態及び変形形態が可能である。記載した実施形態は、本技術の原理、その実際の適用を最も良く説明するために、また、当業者が本技術を様々な実施形態で、企図される特定の用途に合う様々な変更を加えて利用できるようにするために選ばれたものである。本技術の範囲は特許請求の範囲により定義されるものとする。