(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-10
(45)【発行日】2023-02-20
(54)【発明の名称】ゲーム内情報プラットフォーム
(51)【国際特許分類】
A63F 13/5375 20140101AFI20230213BHJP
A63F 13/70 20140101ALI20230213BHJP
【FI】
A63F13/5375
A63F13/70
(21)【出願番号】P 2021524061
(86)(22)【出願日】2019-10-30
(86)【国際出願番号】 US2019058968
(87)【国際公開番号】W WO2020096841
(87)【国際公開日】2020-05-14
【審査請求日】2021-06-14
(32)【優先日】2018-11-05
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】518187455
【氏名又は名称】ソニー・インタラクティブエンタテインメント エルエルシー
(74)【代理人】
【識別番号】100099324
【氏名又は名称】鈴木 正剛
(72)【発明者】
【氏名】アレキサンダー ヤジェビンスキ
【審査官】安田 明央
(56)【参考文献】
【文献】特開平10-099541(JP,A)
【文献】国際公開第2017/218303(WO,A1)
【文献】特開2002-306844(JP,A)
【文献】国際公開第2009/048002(WO,A1)
【文献】特開2009-017921(JP,A)
【文献】特開2016-053804(JP,A)
【文献】特開2013-248316(JP,A)
【文献】米国特許出願公開第2018/0243656(US,A1)
【文献】欧州特許出願公開第01127599(EP,A2)
【文献】米国特許出願公開第2009/0094535(US,A1)
【文献】米国特許出願公開第2018/0001206(US,A1)
【文献】米国特許出願公開第2016/0256775(US,A1)
【文献】米国特許出願公開第2016/0001183(US,A1)
【文献】米国特許出願公開第2019/0012734(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-13/98
A63F 9/24
(57)【特許請求の範囲】
【請求項1】
サーバシステムが実行する方法であって、
プレーヤがビデオゲーム内の現在の状態と後続の状態の間でとるべきゲームコースを決定するために、前記ビデオゲームの前記プレーヤのゲームデータをサーバで処理し、
前記ゲームコース内で連続する複数のセグメントを識別
し、前記複数のセグメントのそれぞれは、ゲームアクション入力を入力して対応するゲーム応答を達成することによって前記プレーヤによって完了される
ものであり、
効率メトリックを決定するために前記ビデオゲームの以前のセグメントからの前記プレーヤのゲームテレメトリを前記サーバで処理
し、前記ゲームテレメトリは、ゲームアクション入力及び前記対応するゲーム応答を
含むものであり、
ゲームアクション関数を使用して、前記効率メトリックに基づいて、前記プレーヤが前記ゲームコースを
プレイして前記後続の状態に到達するために使用する推定時間を計算し、
前記プレーヤのデバイスに通信するための推奨を生成
し、前記推奨は、前記プレーヤが前記後続の状態に到達するための前記推定時間
を含むものである、方法。
【請求項2】
前記ゲームアクション関数は、前記効率メトリックを前記複数のセグメントのそれぞれに適用して、前記プレーヤが前記複数のセグメントのそれぞれを完了するための各推定時間を取得し、
前記ゲームアクション関数は、前記推定時間を前記計算するために、前記プレーヤが前記複数のセグメントのそれぞれを完了するための前記各推定時間を合計する、請求項1に記載の方法。
【請求項3】
前記ゲームアクション関数は、前記各セグメントに重み係数を適用し、
前記重み係数は、前記ゲームコースをプレイする前にプレーヤが前記ビデオゲーム内でどれだけ効率的に実行しているかを示す、請求項2に記載の方法。
【請求項4】
前記プレーヤの前記ゲームテレメトリの処理では、前記効率メトリックを決定するために、前記ゲームアクション入力及び前記対応するゲーム応答を所望のゲーム応答と比較する、請求項1に記載の方法。
【請求項5】
前記ゲームアクション関数を使用した前記推定時間の計算では、現在の時刻と前記プレーヤのプレーヤプロファイルとに基づいて前記推定時間を調整し、
前記プレーヤプロファイルは、プレーヤの効率を時刻の関数として追跡する、請求項1に記載の方法。
【請求項6】
前記推定時間よりも短い時間で前記ゲームコースを
プレイするために前記プレーヤが使用できるリソースをリソースのデータベースから識別し、
前記ゲームアクション関数を使用して、前記効率メトリックに基づいた前記リソースを使用して前記後続の状態に到達するために前記プレーヤが前記ゲームコースを
プレイするために使用する第2の推定時間を計算し、前記第2の推定時間は前記推定時間よりも短いものであり、
前記推奨において、前記リソースを選択するためのオプションと前記第2の推定時間の表示を提供する、請求項1に記載の方法。
【請求項7】
更に、ユーザプロファイルから、所定の時刻に関連付けられたユーザ活動を識別し、
現在の時刻及び前記推定時間に基づいて、前記ユーザ活動に関連する前記所定の時刻の前に、前記プレーヤが前記後続の状態に到達しないと判断し、
前記推奨において、前記ユーザ活動が前記所定の時刻に発生する前に、前記プレーヤが前記後続の状態に到達しないとの表示を提供する、請求項1に記載の方法。
【請求項8】
更に、前記ゲームテレメトリから、前記ゲームアクション入力、前記対応するゲーム応答、及び所望のゲーム応答に基づいて、ゲームアクション入力の欠陥を識別し、
前記推奨において、前記ゲームアクション入力の欠陥を訂正するためのヒントを提供する、請求項1に記載の方法。
【請求項9】
前記ゲームコースを決定するための前記ゲームデータの処理では、前記ゲームコースの前記後続の状態を決定するためにコミュニティゲームデータまたは開発者ゲームデータにアクセスするゲームコースアナライザを使用する、請求項1に記載の方法。
【請求項10】
前記推定時間は、前記プレーヤが前記セグメントの1つまたは複数を完了する際の前記プレーヤのパフォーマンスに基づいて前記ゲームコースを
プレイするときに、前記ゲームアクション関数によって更新される、請求項1に記載の方法。
【請求項11】
プレーヤがビデオゲーム内の現在の状態と後続の状態の間でとるゲームコースを予測するために、前記ビデオゲームの前記プレーヤのゲームデータを受信するゲームコースアナライザ
を有し、
ゲームアクション入力を入力して対応するゲーム応答を達成することに
よって前記プレーヤが完了するべきである、連続する複数のセグメントを識別するゲームコースセグメンテーションモジュール
を有し、
効率メトリックを決定するために前記ビデオゲームの以前のセグメントからの前記プレーヤのゲームテレメトリを処理するゲームプレイ効率モジュール
を有し、前記ゲームテレメトリは、ゲームアクション入力と対応するゲーム応答
とを含むものであり、
前記ゲームコースの前記複数のセグメントに基づいて、及び前記効率メトリックに基づいて、前記ゲームコースの完了までの時間を予測するゲームアクション関数モジュール
を有し、
前記完了までの時間を前記プレーヤのデバイスに通信する推奨モジュール
を有する、サーバシステム。
【請求項12】
前記ゲームアクション関数モジュールは、前記効率メトリックを前記複数のセグメントのそれぞれに適用して、前記プレーヤが前記複数のゲームセグメントのそれぞれを完了するための各推定時間を取得するように構成され、
前記ゲームアクション関数は、前記完了までの時間を前記予測するために、前記プレーヤが前記複数のセグメントのそれぞれを完了するための前記各推定時間を合計する、請求項11に記載のサーバシステム。
【請求項13】
前記ゲームアクション関数は、前記各セグメントに重み係数を適用し、
前記重み係数は、前記ゲームコースをプレイする前に、前記ビデオゲーム内でどれだけ効率的に実行しているかを示す、請求項11に記載のサーバシステム。
【請求項14】
前記プレーヤの前記ゲームテレメトリの処理では、前記効率メトリックを決定するために、前記ゲームアクション入力及び前記対応するゲーム応答を所望のゲーム応答と比較する、請求項11に記載のサーバシステム。
【請求項15】
所定の時刻に関連付けられたユーザ活動を識別するユーザプロファイルモジュールと、
現在の時刻及び前記推定時間に基づいて、前記ユーザ活動に関連する前記所定の時刻の前に、前記プレーヤが前記ゲームコースを完了しないと判断するスケジューリングマネージャと、をさらに備え、
前記推奨モジュールは、前記所定の時刻に発生する前記ユーザ活動の前に、前記プレーヤが前記ゲームコースを完了しないとの表示を提供する、
請求項11に記載のサーバシステム。
【請求項16】
前記ゲームプレイ効率モジュールは、前記ゲームアクション入力、前記対応するゲーム応答、及び所望のゲーム応答に基づいて、ゲームアクション入力の欠陥を識別するように構成され、
前記推奨モジュールは、前記推奨において、前記プレーヤが前記ゲームアクション入力の欠陥を改善できるようにするヒントを提供する、請求項11に記載のサーバシステム。
【請求項17】
前記推定時間は、前記セグメントの1つまたは複数を完了する際の前記プレーヤのパフォーマンスに基づいて、前記プレーヤが前記ゲームコースを
プレイするときに、前記ゲームアクション関数によって更新される、請求項11に記載のサーバシステム。
【請求項18】
プロセッサベースのシステムにより実行可能なコンピュータプログラムを記憶したコンピュータ可読記憶媒体であって、
プレーヤがビデオゲーム内の現在の状態と後続の状態の間でとるべきゲームコースを決定するために、前記ビデオゲームの前記プレーヤのゲームデータを処理するプログラム命令が記録され、
前記ゲームコース内で連続する複数のセグメントを識別するプログラム命令が記録され、前記複数のセグメントのそれぞれは、ゲームアクション入力を入力して対応するゲーム応答を達成することによって前記プレーヤによって完了されるものであり、
効率メトリックを決定するために前記ビデオゲームの以前のセグメントからの前記プレーヤのゲームテレメトリを処理するプログラム命令が記録され、前記ゲームテレメトリは、ゲームアクション入力と前記対応するゲーム応答とを含むものであり、
ゲームアクション関数を使用して、前記効率メトリックに基づいて、前記プレーヤが前記ゲームコースを
プレイして前記後続の状態に到達するために使用する推定時間を計算するプログラム命令が記録され、
前記プレーヤのデバイスに通信するための推奨を生成するプログラム命令が記録されており、前記推奨には前記プレーヤが前記後続の状態に到達するための前記推定時間が含まれる、コンピュータ可読記憶媒体。
【請求項19】
前記ゲームアクション関数は、前記効率メトリックを前記複数のセグメントのそれぞれに適用して、前記プレーヤが前記複数のセグメントのそれぞれを完了するための各推定時間を取得するものであり、
前記ゲームアクション関数は、前記プレーヤが前記ゲームコースを
プレイするために使用する前記推定時間を前記計算するために前記各推定時間を合計するものである、請求項18に記載のコンピュータ可読記憶媒体。
【請求項20】
前記ゲームアクション入力、前記対応するゲーム応答、及び所望のゲーム応答に基づいて、前記ゲームテレメトリから、ゲームアクション入力の欠陥を識別するプログラム命令と、
前記推奨において、前記ゲームアクション入力の欠陥を訂正するためのヒントまたはリソースを提供するプログラム命令と、
がさらに記憶された、請求項18に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は一般的に、ビデオゲームに関し、より具体的には、完了までの推定時間などのタイミング情報、及びボーナスコンテンツをプレーヤに提供するための方法及びシステムに関する。
【背景技術】
【0002】
日常生活では、人々はタスクにかかる時間について大体分かっている。例えば、洗濯機は、衣類の洗濯と乾燥にかかる推定時間を表示できる。アプリケーションの全地球測位システム(GPS)の構成要素は、運転者が目的地に到着するまでにかかるであろう時間を運転者に知らせる。同様に、エンターテインメントの分野では、ユーザは何かにかかる時間を知らされることがよくある。例えば、ユーザには通常、ダウンロードにかかる時間やコマーシャルにかかる時間の推定が提供される。ビデオゲームではそうではない。多くの場合、ビデオゲームのプレーヤは、特定のタスクにかかる時間を認識していない。例えば、シングルプレーヤゲームのプレーヤが何らかのレベルを完了しようとすると、タスクを完了するのに5分未満から数時間以上必要な場合がある。ゲーム内タスクを完了するために必要な時間のこの不確実性は、プレーヤが他の予定を有し得るので、プレーヤに問題を引き起こす。
【0003】
本実施形態はこのような背景の下になされたものである。
【発明の概要】
【0004】
本開示の実施形態は、コンテキストデータ及び類似プレーヤのコミュニティからのデータに基づいて、プレーヤを支援するゲーム内リソースを検索及び識別するための方法及びシステムに関する。
【0005】
一実施形態では、コンピュータ実施方法が提供される。方法は、プレーヤがビデオゲーム内の現在の状態と後続の状態の間でとるべきゲームコースを決定するために、ビデオゲームのプレーヤのゲームデータを処理する操作を提供する。方法は、ゲームコース内で連続する複数のセグメントを識別する操作をさらに含み、複数のセグメントのそれぞれは、ゲームアクション入力を入力して対応するゲーム応答を達成することによってプレーヤによって完了される。方法は、サーバで、効率メトリックを決定するためにビデオゲームの以前のセグメントからのプレーヤのゲームテレメトリを処理する操作を含み、ゲームテレメトリは、ゲームアクション入力及び対応するゲーム応答を含む。さらに、方法は、ゲームアクション関数を使用して、効率メトリックに基づいて、プレーヤがゲームコースを横断して後続の状態に到達するために使用する推定時間を計算する操作を含む。さらに、方法は、プレーヤのデバイスに通信するための推奨を生成する操作を含み、推奨は、プレーヤが後続の状態に到達するための推定時間を含む。
【0006】
別の実施形態では、サーバシステムが提供される。サーバシステムは、プレーヤがビデオゲーム内の現在の状態と後続の状態の間でとるゲームコースを予測するために、ビデオゲームのプレーヤのゲームデータを受信するためのゲームコースアナライザを備える。サーバシステムは、ゲームアクション入力を入力して対応するゲーム応答を達成することによってプレーヤが完了するべき複数の連続するセグメントを識別するためのゲームコースセグメンテーションモジュールを備える。さらに、サーバシステムは、効率メトリックを決定するためにビデオゲームの以前のセグメントからのプレーヤのゲームテレメトリを処理するためのゲームプレイ効率モジュールを備え、ゲームテレメトリは、ゲームアクション入力及び対応するゲーム応答を含む。さらに、サーバシステムは、ゲームコースの複数のセグメントに基づいて、及び効率メトリックに基づいて、ゲームコースの完了までの時間を予測するためのゲームアクション関数モジュールを備える。さらに、サーバシステムは、完了までの時間をプレーヤのデバイスに通信するための推奨モジュールを備える。
【0007】
さらに別の実施形態では、プロセッサベースのシステムにより実行可能なコンピュータプログラムを記憶した非一時的コンピュータ可読記憶媒体が提供される。非一時的コンピュータ可読記憶媒体は、ビデオゲーム内の現在の状態と後続の状態の間でプレーヤがとるべきゲームコースを決定するために、ビデオゲームのプレーヤのゲームデータを処理するプログラム命令を含む。非一時的コンピュータ可読記憶媒体はまた、ゲームコース内で連続する複数のセグメントを識別するプログラム命令を含み、複数のセグメントのそれぞれは、ゲームアクション入力を入力して対応するゲーム応答を達成することによってプレーヤによって完了される。さらに、非一時的コンピュータ可読記憶媒体は、効率メトリックを決定するためにビデオゲームの以前のセグメントからのプレーヤのゲームテレメトリを処理するプログラム命令を含み、ゲームテレメトリは、ゲームアクション入力及び対応するゲーム応答を含む。さらに、非一時的コンピュータ記憶媒体は、ゲームアクション関数を使用して、効率メトリックに基づいてプレーヤがゲームコースを横断して後続の状態に到達するために使用する推定時間を計算するプログラム命令を含む。さらに、非一時的コンピュータ可読記憶媒体は、プレーヤのデバイスに通信する推奨を生成するプログラム命令を含み、推奨は、プレーヤが後続の状態に到達するための推定時間を含む。本開示の他の態様は、本開示の原理を例として示す添付図面と併せて下記の詳細な説明を読むと明らかになるであろう。
【0008】
本開示は、添付図面と併せて、以下の説明を参照することにより、最も良く理解されるであろう。
【図面の簡単な説明】
【0009】
【
図1】A~Dは、様々な実施形態による、様々な実世界設定及び仮想設定で、持続時間情報がどのように識別され、ユーザに配信されるか、またはされないかを示す概念図である。
【
図2】一実施形態による、持続時間情報プラットフォームを実装するためのシステムの概略図である。
【
図3】一実施形態による、ゲームコースアナライザが、プレーヤが到達しようとしている後続の状態と、現在の状態から後続の状態に到達するために発生するゲーム内アクションのシーケンスを表すゲームコースとを識別する方法の概念図である。
【
図4】一実施形態による、ゲームプレイ効率モジュールがゲームテレメトリに基づいて効率メトリックを決定する方法の概念図である。
【
図5】一実施形態による、ゲームプレイ効率モジュールによって生成及び更新される効率メトリックの特定の要素を示す説明図である。
【
図6】一実施形態による、プレーヤがゲームコースを完了するために使うと予測される完了までの時間を生成するために使用されるゲームアクション関数の概念図である。
【
図7】一実施形態による、コミュニティデータを使用して完了までの時間を計算するゲームアクション関数の追加の実施形態の概念図である。
【
図8】A及びBは、様々な実施形態による、プレーヤのゲームコースの完了までの時間がプレーヤに提示されて、プレーヤが決定を下すのを支援するゲーム内シナリオの説明図である。
【
図9】A及びBは、様々な実施形態による、プレーヤが持続時間ニーズを満たすのを支援することができる持続時間情報プラットフォームの追加の実施形態の説明図である。
【
図10】一実施形態による、ゲーム内情報プラットフォームが、コンテキスト固有の情報を提供することによって、プレーヤの全体的なゲームプレイ体験をどのように強化できるかの説明図である。
【
図11】本開示の様々な実施形態の態様を実行するために使用することができる例示的なデバイスの構成要素の説明図である。
【発明を実施するための形態】
【0010】
本開示の実施形態は、プレーヤのゲームテレメトリ及びゲームプレイの効率に基づいて、プレーヤにタイミング情報を提供するための方法及びシステムに関する。本開示の実施形態はまた、プレーヤの好みに基づいてプレーヤにボーナスコンテンツを提供するための方法及びシステムに関する。しかしながら、本開示は、これらの具体的詳細の一部または全てがなくとも実施し得ることは、当業者には明らかであろう。他の例では、本開示を不必要に曖昧にしないために、周知のプロセス操作は詳細には記載しない。
【0011】
人間は、物事が完了するまでにどれくらいの時間がかかるかという感覚を持って日常生活を送っている。人間は、試みにかかる可能性の高い時間の推定に基づいて、それらの試みを行うか、または中止するかを決定する。様々なタスクの完了までの時間を推定することで、私たちは、事前に計画を立て、一度に複数のタスクを考慮し、自分の時間に関する重要な決定を下すことができる。例えば、目的地まで車を運転する時、GPSは、到着までにあとどれくらいかかるかを私たちに知らせることができる。または、私たちは、目的地に到着するまでにかかる推定時間に基づいて、目的地に行かないと決めることもできる。従って、何かを完了したり、どこかに到着したりするのにかかる時間に関する時間情報により、私たちは自分の時間を取り巻く決定を下すことができる。
【0012】
同じことが必ずしもビデオゲームに当てはまるわけではない。プレーヤがタスク(例えば、レベル、レベルアップ、ミッション、チャプタ、オブジェクトの取得など)を完了しようとする時、プレーヤは、タスクにかかり得る時間量をまったく認識していない場合がある。特定の状況では、プレーヤは、自分の時間に関して情報に基づいた決定を行うために必要な適切な持続時間情報を与えられていない。例えば、プレーヤが必要な持続時間情報を持っていない場合、プレーヤは自分が視聴しようとしていた番組やゲームを見逃す場合がある。他の状況では、持続時間情報を持っていないプレーヤは、ゲームを行うために、無意識のうちに夜までプレイする場合があり、ほとんど意図せずに睡眠を犠牲にする場合がある。
【0013】
一部の設定では、ビデオゲームはプレーヤの時間の認識を歪めることが知られている。つまり、例えば、プレーヤが時速100マイルで仮想車を運転したり、ある場所を繰り返し耕作したり、長時間の激しい戦闘を行ったりすると、そのプレーヤは実世界の時間と相関する時間感覚を維持することが困難になる。ビデオゲームに固有の一定の特徴の結果として、プレーヤは実世界の時間感覚と切り離されることが多い。プレーヤがゲーム内で完了したいタスクに関する持続時間情報がプレーヤに提供される場合、プレーヤは、タスクを試みるかどうか、またはタスクを一時的にやめるかどうかについて、より良いより多くの情報に基づいた決定を下すことができる。本明細書で検討される実施形態は、プレーヤが完了しようとしている仮想タスクを予測し、プレーヤが仮想タスクを完了するのにかかり得る時間量を予測し、予測された時間をプレーヤに提示するように構成された持続時間情報プラットフォームに関する。ある実施形態では、実行可能なオプションが、ゲーム関連タスクにかかる未知の時間に関連するスケジューリングまたはタイミングの問題を解決するのを支援するために持続時間情報とともに提示される。
【0014】
図1A~
図1Dは、様々な実施形態による、様々な実世界設定及び仮想設定で、持続時間情報がどのように識別され、ユーザに配信されるか、またはされないかの概念図を示す。
図1Aは、食器が洗浄されていない状態S1の実世界設定のユーザを示す。ユーザは、食器が洗浄された状態S2に到達しようとする。
図1Aに示す設定等の実世界設定では、私たちは、タスクにかかる時間について自然な感覚がある。この直感的な時間感覚は、意識下の場合もあれば、意識している場合もあり、ありふれたものからより壮大なものにわたるタスクに適用することができる。例えば、食器洗いなどの雑用を与えられた時、食器洗いが終わるのにかかる時間の感覚を持つことについてあまり考えることはない。食器の量、食器の状態、及び食器洗い機から食器が出されているかどうかを確認する。また、経験に基づいて、食器洗いの速さや遅さも分かっている。このデータから、タスクにかかる時間を正確に判断できる。このタイプの「直感的持続時間情報」は、ルーチン及び線形タスクでより頻繁に利用可能であり、よって、個人が既知の量(例えば、食器の数)及び既知の時間(例えば、食器毎に15秒)に従って時間の予測を見積もることができる。
【0015】
他の実世界設定では、ユーザは外部データを使用して直感的時間感覚を増強し得る。
図1Bでは、状態S1のユーザは現在、カリフォルニア州サニーベールにいて、カリフォルニア州ユーレカ(状態S2)に行きたい。ここでは、ユーザはユーレカがサニーベールからどれだけ離れているか、道路状況がどのようなものか知らない場合があるため、ユーザの直感的持続時間感覚はあまり有益ではない。GPSアプリケーションは、この設定で、ドライブにかかる時間に関する持続時間情報を提供するのに役立つ。ユーザに持続時間情報が提供されると、ユーザはその旅に関して情報に基づいた選択を行うことができる。例えば、ドライブに時間がかかりすぎるため、旅を中止する決定をしてよい。代わりに、旅行のためにサニーベールを出発する特定の時刻を計画する場合もあれば、カリフォルニア州ユカイアがサニーベールとユーレカのほぼ中間にあるため、ユカイアに宿泊することを計画する場合もある。いずれにせよ、ユーザは旅行に関する貴重で実行可能な持続時間情報を与えられる。
【0016】
図1Cは、一実施形態による、仮想タスクが完了していない状態S1から、仮想タスクが完了している状態S2に到達しようとしている仮想設定のユーザを示す。仮想タスクは、ステージ、レベル、チャプタ、ミッションの完了、またはアイテム、キャラクタ、レベルアップの取得等、ゲーム内関連の任意の状態変化であってよい。
図1Cに示すように、状態S1のユーザは、S2に到達するのにかかる時間に関する持続時間情報を持たない。ユーザは、タスクを完了するために必要な時間を推測し得るが、この推測は正確でないことが多い。いずれの場合も、完了までの時間は15分から150分の間となり得る。言い換えると、完了までの時間に関するユーザの推測は、桁違いにずれている場合がある。時間に関するこのレベルの不確実性は通常、日常生活では許容されない。しかし、特定の仮想設定では、現在のところ殆ど避けることができない。本明細書に記載する実施形態は、持続時間情報プラットフォームを実装することによって、ビデオゲームなどの仮想設定に関連する時間の現行の不確実性のレベルを低減するように企図されている。ある実施形態では、持続時間情報プラットフォームは、ユーザの効率に基づいて、仮想設定においてユーザが所与のタスクを完了するのにかかり得る時間量または時間範囲を予測または計算することができる。これらの実施形態では、ユーザがかかり得る時間量または時間範囲は、本明細書では、完了までの持続時間または完了までの推定時間、または完了時間と呼ばれてよい。
【0017】
図1Dは、一実施形態による、仮想タスクを完了するための完了時間を提供する持続時間情報プラットフォームを備えた仮想設定を示す。完了時間は15分と示され、タスクを開始すべきかどうかをユーザに知らせることができる。代わりに完了時間が150分だった場合、ユーザはタスクを一時的に中止するか、タスクの半分を今、完了し、半分を後で完了するかを決定してよい。従って、ユーザは、ユーザが従事したいタスクに関する価値のある実行可能な持続時間情報を与えられ、それにより、タスクについて情報に基づいた選択を行うことができる。
【0018】
図2は、一実施形態による、持続時間情報プラットフォーム208を実装するためのシステムの概略図を示す。
図2は、コントローラ201を介してローカルデバイス202上で実行され、ディスプレイ204に表示されるビデオゲームをプレイしているユーザ200を示す。
図2では、ユーザ200が、ミッションを完了するなどのゲーム内タスクを開始し、ミッションのための持続時間をユーザがまだ知らない(例えば、タスクを試みるのは初めてであるため)と仮定する。図示の実施形態では、プレイステーション(登録商標)または関連デバイスであってよいローカルデバイス202は、ネットワーク204を介してサーバシステム206の持続時間情報プラットフォーム208に、あるプレーヤに関連するデータを通信する。例えば、ローカルデバイス202は、ゲームデータ210及びゲームテレメトリ212を持続時間情報プラットフォーム208に通信してよい。ゲームデータ210は、保存されたデータ及びゲーム状態データを含んでよく、ゲームテレメトリ212は、コントローラ201で受信されたゲーム入力アクションに関連するデータを含んでよい。
【0019】
持続時間情報プラットフォーム208は、ユーザ200のユーザプロファイル220及びユーザスケジュール222にもアクセスできることが示されている。ユーザプロファイル220は、ユーザのゲーム内の好み、プレイスタイル、スキルレベルなどに関連するデータを含み得る。ユーザプロファイル220は、時刻の関数としてビデオゲームをプレイする際のユーザ200の効率に関連する情報を含み得る。例えば、ユーザが一般に午後12時から午後5時の間に効率が悪くなるが、午後5時から午前12時の間に効率が良くなる場合、ユーザプロファイル220は、時刻の関数としてユーザ200の効率を追跡してよい。ゲームプレイの効率は、本明細書では、一般に、プレーヤがビデオゲームで前進する能力を説明するために使用される。従って、ゲームプレイの効率は、ユーザの集中/注意力、入力の正確さと速さ、問題解決能力、チームメイトとのコミュニケーション能力、機知、意思決定、反応スピードなどを含む多要素の尺度である。ユーザの効率は、時刻に依存する階層型モデルを含む様々なモデルで記述してよい。モデルは、時刻やユーザについて分かっている他の活動に応じて、ユーザの効率レベルを上下させてよい。
【0020】
ユーザプロファイル220に含まれ得るユーザスケジュール222は、ユーザの毎日または毎週のスケジュールに関連するデータを含み得る。例えば、ユーザスケジュール222は、アプリケーションプログラミングインタフェース(API)を介してユーザのカレンダーまたはデイリープランナーにアクセスしてよい。ユーザスケジュール222はまた、テレビ番組、ニュースセグメント、スポーツゲームなど、ユーザが頻繁に視聴する特定の番組を人工知能(AI)を介して学習してよい。例えば、ユーザスケジュール222は、ユーザ200がGolden State WarriorsのゲームとSan Francisco49erのゲームに関心を持っていることを学習し得る。他の実施形態では、ユーザスケジュール222は、ユーザ200が参加を計画している活動のために手動でプログラムされてよい。
【0021】
持続時間情報プラットフォーム208はまた、ゲームコースアナライザ224を備えることが示されており、ゲームコースアナライザ224は、ユーザ200が完了しようとしている1つまたは複数のゲームコースをゲームデータ210に基づいて分析及び予測する役割をする。例えば、ユーザ200が現在、何らかの現在状態にある場合、ゲームコースアナライザ224は、ユーザ200が到達しようとしている将来または後続の状態、並びにユーザ200が後続の状態に到達するためにとる可能性が高いコースを判断する。ゲームコースアナライザ224は、他のプレーヤの様々な後続の状態、及び他のプレーヤがそれらの後続の状態に到達するためにとった様々なゲームコースを評価することによって、後続の状態がどれであり得るか及びゲームコースがどれであり得るかを判断するために、コミュニティデータ226にアクセスしてよい。
図3を参照して、ゲームコースアナライザ224を以下でより詳細に説明する。ある実施形態では、ゲームコースアナライザ224は、機械学習モジュール228からのデータにアクセスして、ユーザ200の以前のゲームプレイと他のユーザの以前のゲームプレイとから可能性のあるゲームコースを判断してよい。
【0022】
持続時間情報プラットフォーム208は、ゲームコースセグメンテーションモジュール216、ゲームプレイ効率モジュール214、及びゲームアクション関数232をさらに備える。ゲームコースセグメンテーションモジュール216は、ゲームコースアナライザ224によって出力されたゲームコースを分析し、ゲームコースを、持続時間分析により適した準離散セグメントにパースするように企図されている。例えば、所与のゲームコースが複数の連続しているが異種のセグメントを含む場合、ゲームコースセグメンテーションモジュール216は、持続時間分析が実行され得る個々のセグメントにゲームコースをパースしてよい。ただし、持続時間分析により適した個々のセグメントがある場合でも、ユーザがゲームコースのセグメントをプレイするのにどれだけ効率的であるかに関するデータがないと、そのような分析は正確性に欠ける場合がある。
【0023】
従って、ゲームプレイ効率モジュール214は、ゲームの様々な側面で、特にそれらがゲームコース内の将来のセグメントに関連し得る場合、プレーヤのパフォーマンスを分析するように企図されている。例えば、ゲームプレイ効率モジュール214は、ユーザ200のゲームテレメトリ212を分析して、プレーヤの入力に関連する様々な効率メトリックを計算してよい。一実施形態では、ゲームプレーヤ効率モジュール214は、(例えば、コントローラ201を介した)プレーヤの入力を、推定された所望の入力と比較して、効率メトリックを判断してよい。この意味で、プレーヤの実際の入力とプレーヤの所望の入力との間に対称性が大きいほど、プレーヤの効率メトリックは大きくなる。ゲームプレイ効率モジュール214については、
図4を参照して以下により詳細に説明する。
【0024】
ゲームアクション関数232は、ゲームコースセグメンテーションモジュール216及びゲームプレイ効率モジュール214から入力を受信して、ユーザ200がゲームコースを完了するのに必要と思われる時間量または時間範囲を予測する。より具体的には、ゲームアクション関数232は、ゲームプレイ効率モジュール214によって出力された効率メトリックを、ゲームコースセグメンテーションモジュール216によって出力された個々のセグメントに適用するように機能する。ある実施形態では、ゲームアクション関数232は、個々のコースセグメントのそれぞれについて計算された時間を合計して、ユーザ200がゲームコースを完了するのにかかる合計の時間を表す全持続時間を生成してよい。他の実施形態では、ゲームアクション関数232はまた、プレーヤがどのようにプレイするかのAIモデルに基づいて、ゲームコースをプレイするユーザ200の完了までの複数のシミュレーションをプロビジョニングしてよい。いずれの場合でも、ゲームアクション関数232は、ユーザ200がゲームコースを完了することに関して完了までの時間を提供する。ゲームアクション関数232について、
図6を参照して以下により詳細に説明する。
【0025】
持続時間情報プラットフォーム208はまた、推奨モジュール218を備えることが示されており、推奨モジュール218は、ユーザスケジュール222、ユーザプロファイル220、及びゲームアクション関数232から入力を受信して、タイミングに関してユーザ200に推奨を提供する。例えば、ユーザ200が、ゲームコースの完了までの時間などの何らかのタイミング関連情報の提供を要求する場合、推奨モジュール218は、ゲームアクション関数232によって計算された完了までの時間をユーザ200に伝達するためにローカルデバイス202に通信してよい。さらに、推奨モジュール218は、ユーザ200が現在のゲームコースを完了することと他の活動との間に生じる可能性があるタイミングの競合を検出するように企図されている。例えば、推奨モジュール218は、ユーザが通常見ている番組が30分後に放送されようとしていることを検出し得る。
【0026】
従って、推奨モジュール218は、番組の放送前に、ゲームコースを完了するユーザ200間のタイミングの競合を検出し得る。次に、推奨モジュール218は、タイミングの競合を示す推奨234をユーザ200に伝達してよい。さらに、推奨モジュール218は、リソースデータベース230及び機械学習モジュール228にアクセスして、タイミングの競合を回避するためのオプションをユーザ200に提供してよい。例えば、推奨モジュール218は、ゲームコースを完了するより必要な時間が短いユーザ200が参加するための代替の活動(例えば、クエストまたはミッション)を提案し、それによってタイミングの競合を回避してよい。他の実施形態では、推奨モジュール218は、ユーザが番組放送の前にゲームコースを完了することができるように、ユーザの完了時間をスピードアップする(例えば、完了時間を短縮する)可能性が高いリソースをリソースデータベース230から提案してよい。
【0027】
図3は、一実施形態による、ゲームコースアナライザ224が、プレーヤが到達しようとしている後続の状態304と、現在の状態302から後続の状態304に到達するために発生するゲーム内アクションのシーケンスを表すゲームコース306とを識別する方法の概念図を示す。通常、ゲームコース306などのゲームコースは、第1の状態と第2の状態の間の1つまたは複数のコース依存経路を記述するデータのセットである。
【0028】
ゲームコースアナライザ224は、開発者ゲームデータ300にアクセスでき、ゲームコースアナライザ224は、ビデオゲーム内の様々な関心状態を識別するために開発者ゲームデータ300をマップとして使用し得ることが企図されている。関心状態は、プレーヤがゲームアクションを一時停止する可能性が高いビデオゲーム内のポイント(例えば、「ロードアウト」、一時停止、保存など)である。関心状態は通常、次のレベルまたはステージへの到達、タスクの完了、オブジェクトまたはキャラクタの取得、タイムを破るなど、ゲーム内の何かの完了に関連付けられる。他の状況では、関心状態は必ずしも完了に関連付けられなくてよいが、プレーヤが快適にゲームアクションを中断できるゲームの期間である。
図3では、関心状態は、レベル8~11が終了するときの開発者ゲームデータ300のタイムラインに沿って描かれている。さらに、関心状態は、ボスXを打ち負かすことに関連付けられている。この場合、ゲームコースアナライザ224は、後続の状態304を、ボスXを打ち負かしたことに関連付けられるものとして識別する。この判断は、コミュニティデータ226及び開発者ゲームデータ300に基づいてよい。
【0029】
ゲームコースアナライザ224はまた、他のプレーヤが現在の状態302から後続の状態304に到達するためにとった複数のゲームコースに基づいてゲームコース306を決定するために、コミュニティデータ226にアクセスして、分析する。その際、ゲームコースアナライザ224は、プレーヤに類似しているプレーヤに関連付けられたゲームコースを求めてコミュニティデータ226をフィルタリングしてよい。さらに、ゲームコースアナライザ224は、コミュニティデータ226内の一般的なパターンを識別して、ゲームコース306が何を含むべきかをよりよく規定し得る。例えば、ゲームコースの完了中に、プレーヤの95%がタスクAを実行し、プレーヤの5%が実行しなかった場合、ゲームコースアナライザ224は、ゲームコース306にタスクAを含めてよい。他の実施形態では、ゲームコースアナライザ224は、確率論的な方法でタスクAを含めてよい。
【0030】
図3は、ゲームコース306の306’と306’’の2つの部分も示す。部分306’及び306’’は、それらが両方とも、以前の状態308から後続の状態304につながるゲーム内イベントまたはアクションのシーケンスを記述するという点で類似している。これらは、アクションの正確なシーケンスが同じではないという点で異なる。例えば、部分306’のアクションのシーケンスはA-B-C-D-E-Fとして示され、部分306’’のアクションのシーケンスはB-A-D-C-F-Eとして示される。これらのバリエーションの両方は、同じ目的を達成するために、例えば、後続の状態304に到達するために、ゲームコース306が様々な類似しているが同一ではないアクションのシーケンスをキャプチャするように、ゲームコース306に組み込まれてよい。
【0031】
しかしながら、プレイされたゲームコースの全てのインスタンスがゲームコース306に含まれるべきだというわけではない。例えば、部分310は、ほとんどのプレーヤがゲームコース306をどのように完了するかを表していない遠回りなゲームアクションのシーケンスを示している。結果として、部分310は、プレーヤがとる可能性が高いゲームコース306を決定するための予測値がほとんどないため、ゲームコース306に含まれない。
【0032】
図4は、一実施形態による、ゲームプレイ効率モジュール214がゲームテレメトリ212に基づいて効率メトリック401を決定する方法の概念図を示す。ゲームをプレイする際のプレーヤの効率は、プレーヤがゲームコースを完了するのにかかる時間に影響する。プレーヤの効率メトリック401は、プレーヤの効率をキャプチャ及び定量化し、様々なゲームコースを完了するための時間の推定に予測値を追加するための1つの方法であると考えられている。
【0033】
図4では、プレーヤのゲームテレメトリ212は、コントローラまたは他のタイプのゲーム入力を含み得るゲームアクション入力400と、各ゲームアクション入力400に応答して発生するゲーム状態を含み得るゲーム応答402とを含むように示されている。ゲームアクション入力400及びゲーム応答402に応答して、ゲームプレイ効率モジュール214はまた、予測される所望のゲーム応答404及び対応する予測される所望のゲームアクション入力406を生成する。予測される所望のゲーム応答404は、プレーヤがゲームで達成しようとしていたことの予測である。ある実施形態では、ゲームプレイ効率モジュール214は、例えば、一般的に犯されるゲーム内ミスのデータベース、AI学習モジュール、コミュニティデータ、開発者データ等を含む、予測される所望のゲーム応答404を決定するために様々なソースにアクセスできてよい。これらのそれぞれは、任意の特定のゲームアクション入力に対して起こり得る所望の応答が何であったかを決定する際に、ゲームプレイ効率モジュール214を支援する。
【0034】
予測される所望のゲームアクション入力406は、単に、予測される所望のゲーム応答404を達成するための対応する入力の組み合わせである。効率記録408は、予測される所望のゲーム応答404と、ゲームアクション入力400によって引き起こされたゲーム応答402の間に一致または対応があるかどうかの表示を記録する。
図4において、効率記録408上の「X」は、ゲーム応答402が、予測される所望のゲーム応答404と一致も対応もしないことを示し、「チェック」マークは、一致または対応することを示す。他の表示を使用して、例えば、プレーヤのゲーム入力が、所望のゲーム出力と比較してどれだけ正確であるかを記録してもよい。
【0035】
プレーヤのビデオゲームとの対話の間に発生する4つの別個のゲームアクション入力410a、412a、414a、及び416aが、ゲームアクション入力400のタイムラインに沿って示されている。例えば、ゲームアクション入力410aは、ジャンプのゲーム応答410bを生成するX‐丸‐三角の入力の組み合わせを含む。予測される所望のゲーム応答410cに示されるように、プレーヤがジャンプの代わりにパワージャンプを実際に行おうとしていた可能性がある。従って、プレーヤは、予測される所望のゲームアクション入力406として三角‐X‐丸を入力する必要があるか、または入力しようとしていた。予測される所望のゲーム応答410dがゲーム応答410bと一致しないので、失敗した試み410eが効率記録408に記録される。同様のプロセスが、残りのゲームアクション入力412a、414a、及び416aに対して実行される。例えば、上向き‐三角形のゲーム入力412aは、前方にジャンプのゲーム応答412bをもたらす。しかしながら、予測される所望のゲーム応答412cによって示されるように、プレーヤがアッパーカットを行おうとしていた可能性がある。再び、ゲーム応答412bと予測される所望のゲーム応答412cがと一致しないので、失敗した試み412eが効率記録408に記録される。
【0036】
X‐丸‐三角の次のゲームアクション入力414aでは、ユーザはゲームアクション入力410aで行ったのと同じミスを繰り返す。対応するゲーム応答414bはジャンプであるが、予測される望ましいゲーム応答414cは再びパワージャンプである。効率記録408は、2回目の失敗した試み414eが記録されていることが示されている。プレーヤは、次のゲームアクション入力416aを正しく入力し、これは、同じくアッパーカットの予測される望ましいゲームアクション応答416cと一致するアッパーカットのゲーム応答416bをもたらす。結果として、成功した試み416eが、効率記録408に記録される。
【0037】
ゲームプレイ効率モジュール214は、ゲームアクション入力400、ゲーム応答402、予測される所望のゲーム応答404、及び予測されるゲームアクション入力406、並びに効率記録408を使用して、効率メトリック401を生成及び更新するように企図されている。効率メトリック401は、プレーヤが様々なゲーム関連タスクでどれほど効率的であるかを記述する。
【0038】
図5は、一実施形態による、ゲームプレイ効率モジュール214によって生成及び更新される効率メトリック401の特定の要素を示す。効率メトリック401がキャプチャしようとするゲーム関連のパフォーマンスには、一般的能力500、タスク指向能力502、及び実施能力504の3つの一般的なカテゴリまたは層があることが企図されている。一般的能力500は、例えば、プレーヤのスキルレベル、全体的なハンドコントローラ調整、視覚と手の協調、器用さ、精度、反応時間、問題解決スキル、他者と協力する能力、ゲームアクション入力の経済性、ゲームアクション入力の効率性、コントローラ入力間のタイミングなどのより高いレベルの指標を含み得る。一般的能力は、多くの種類のゲーム環境と様々なゲームタイトルにつながるプレーヤの全体的な経験とスキルを示す傾向がある。一般的能力を記述するメトリックは、ゲームプレイのより長い期間にわたって様々なゲームタイトルについてプレーヤのゲームテレメトリを調べる場合がある。一般的能力500のメトリックは個別に採点されてよく、スコアの低いタイプの一般的能力に関してプレーヤが向上するのを支援する是正措置が提案されてよい。例えば、プレーヤのハンドコントローラ調整のスコアが比較的低いと判断された場合、是正措置には、プレーヤのハンドコントローラ調整をトレーニングする再生可能なモジュールを含めることができる。
【0039】
タスク指向能力502は、例えば、ナビゲーション、障害物の克服、ツールの使用、照準を合わせる、構造の構築、アイテムの発見及び獲得などを含む、特定のタイプのタスクを実行するプレーヤの能力を指す。タスク指向能力502は、一般的能力500よりも細かい粒度のレベルでプレーヤの効率を評価するように企図される。タスク指向能力502メトリックは、様々なタスクに対して個別に採点されてもよく、スコアの低いタイプのタスク指向能力に関してプレーヤが向上するのを支援する是正措置が提案されてよい。例えば、プレーヤの構造物を構築するスコアが比較的低いと判断された場合、是正措置には、構造物をより効率的に構築する方法をプレーヤにトレーニングするモジュールが含まれてよい。
【0040】
実施能力504は、タスクを完了するために使用される特定のゲームアクション、例えば、コントローラ入力を実行するプレーヤの能力を指す。例えば、実施能力504は、射撃、ロビング、ジャンプ、武器の変更、組み合わせの実行などのゲーム内のアクションを正確かつタイムリーに実行するプレーヤの能力を評価し得る。従って、実施能力504は、プレーヤが正しいタイミングで正しい入力の組み合わせを入力する能力を評価し得る。例えば、
図4の効率記録408が与えられた場合、効率メトリック401は、プレーヤが「パワージャンプ」の実行には効率的ではないが、「アッパーカット」の実行には容認できる程度に効率的であることを示す。従って、実施能力502は、三角形‐X‐丸の入力組み合わせを、プレーヤが将来その組み合わせで正確に実行するように、実施する是正措置を示唆し得る。
【0041】
図6は、プレーヤがゲームコース600を完了するために使うと予測される完了までの時間604を生成するために使用されるゲームアクション関数232の概念図を示す。ゲームコース600は、ビデオゲーム内の現在の状態606と後続の状態608の間のビデオゲームの部分によって規定される。例えば、現在の状態606は、特定のレベルの開始に対応してよく、後続の状態608は、そのレベルが完了したゲーム状態に対応してよい。ゲームコース600は、プレーヤがレベルを完了する結果をもたらすゲーム状態またはゲーム軌道によって規定される。ゲームコース600は、ゲームコースセグメンテーションモジュール216によって7つのゲームコースセグメント602(例えば、S1~S7)にセグメンテーションされることが示されている。もちろん、プレーヤが所与のレベルを完了することができる多くの方法がある。ただし、通常、そのレベルを完了するためにプレーヤが完了すべきセグメントがある。
【0042】
ゲームコースセグメント602のそれぞれは、後続の状態608に到達するために実行または完了するべきタスクまたは目的を表してよい。従って、ゲームコースセグメント602のそれぞれは、平均して、完了するのに異なる時間量を使い得る。さらに、ゲームコースセグメント602のそれぞれは、異なるタイプの一般的能力、タスク指向能力、及び実施能力に報いてよい、またはそれらに依存してよい。例えば、セグメントS1には、セグメントS2よりもナビゲーションを重視するタスクが含まれてよく、セグメントS2は、セグメントS1よりも構造を構築することを重視してよい。結果として、プレーヤが、構造を構築するためのプレーヤのメトリックと比較してより高いナビゲーションメトリックを有すると判断された場合、ゲームアクション関数232は、完了までの時間604を計算する時にこれらの差異を考慮する。
【0043】
さらに、各ゲームコースセグメント602は、特定の実施能力のセットに他の実施能力よりも重点を置いてよい。例えば、セグメントS3は、「ピックアップ(獲得)」ゲームアクションを頻繁に使用する必要があるリソース収集タスクであってよく、セグメントS4は、攻撃の組み合わせゲームアクションを頻繁に使用する必要がある格闘タスクであってよい。プレーヤが、攻撃の組み合わせよりもリソースのピックアップに関連するゲームアクションの実施スキルが優れている場合、ゲームアクション関数232は、完了までの時間を計算するときにそのような差異を考慮する。さらに、特定のタイプの一般的能力は、特定のゲームコースセグメント602において、他よりもプレーヤを効率的にするのに役立つ可能性がある。ゲームアクション関数232は、完了までの時間604を計算する時にこれらの差異も考慮してよい。
【0044】
ゲームアクション関数232の実施形態は、ゲームコースセグメント602のそれぞれに関連する完了までの推定時間の合計として示されている。一般に、効率は、プレーヤが特定のセグメントを完了する速さと相関するように企図されている。総和の各項は、各ゲームコースセグメント602の完了までの推定時間に対応し、セグメントのパラメータ、効率メトリック、及び重み係数の関数として概算されてよい。セグメントパラメータは、例えば、特定のセグメントを完了するためにユーザが依存すると予想される一般的能力、タスク指向能力、及び実施能力のタイプを指定してよい。
【0045】
さらに、セグメントパラメータは、例えば、セグメントを完了するために必要なアクションの数及びそれらの難易度を考慮することによって、セグメントの持続時間の長さを指定する持続時間指標を有してよい。セグメントに関連する効率メトリックがセグメントに適用され、セグメントの初期完了時間が返される。次に、完了時間は、セグメントの完了時間に影響を与える他の様々な要因をキャプチャする重み係数によって重み付けされる。例えば、重み係数は、プレーヤの疲労もしくは集中のレベル、またはゲーム内パラメータなどを考慮してよい。重み係数がセグメントの初期完了時間に適用されると、ゲームアクション関数232は、特定のセグメントの完了時間を概算することができる。同じプロセスが、7つのゲームコースセグメント602のそれぞれに対して繰り返され、これにより、ゲームアクション関数232は、ゲームコース600全体の完了までの時間604を予測することができる。
【0046】
さらに、完了までの時間604は、プレーヤがゲームコースをプレイし始めるときに定期的またはリアルタイムで更新されてよいことが企図される。例えば、プレーヤがセグメント1に苦労し、ゲームアクション関数232によって計算された予想時間よりも長くかかる場合、ゲームアクション関数は、セグメント1でのプレーヤの非効率性を反映するように完了までの時間604を調整してよい。ゲームアクション関数232は、プレーヤの現在の効率性の欠如を考慮するために残りのセグメント2~7に重みを付けることによって、完了までの時間604を調整してよい。
【0047】
ある実施形態では、セグメントは、オプションであってよい、またはスキップもしくはジャンプされてよい。ゲームアクション関数232は、例えば、プレーヤがセグメントをスキップする可能性が高いかどうかを推定することによって、そのようなオプションのセグメントを考慮するように企図されている。ゲームアクション関数232は、機械学習モジュールにアクセスして、一般にプレーヤ及び特定のプレーヤが特定のセグメントをスキップまたはジャンプする可能性を判断してよい。さらに、プレーヤがオプションのセグメントをプレイする場合、ゲームアクション関数232は、プレーヤがオプションのセグメントに費やす可能性が高い時間量も反映するように完了までの時間604を更新する。代わりに、プレーヤがセグメントをスキップした場合、ゲームアクション関数232は、同様に、プレーヤがセグメントをスキップしたという事実を反映するように完了までの時間604を更新する。
【0048】
図7は、一実施形態による、コミュニティデータ226を使用して完了までの時間708を計算するゲームアクション関数232の追加の実施形態の概念図を示す。プレーヤのゲームデータ210は、例えば、ゲームコースアナライザ224によって、ゲームコース600を識別するために使用される。ゲームコース600は、現在の状態606と、プレーヤがビデオゲーム内で達成しようと着手したものをプレーヤが達成した状態を表す後続の状態608とによって規定されることが示されている。ゲームデータ210は、保存データ700に関連付けられており、保存データ700は、ゲーム内のユーザの進捗に関する情報を含んでよく、通常、時間に依存しない。保存データ700は、例えば、備品リスト、能力リスト、レベル値、キャラクタ値、ステージ値を含み得る。ゲームアクション関数232は、コミュニティデータ226内の複数のプレーヤからのゲームデータを検索する分類ウィンドウ704を使用する。コミュニティゲームデータ226は、各コミュニティ保存データ702に関連付けられていることが示され、各コミュニティ保存データ702は、コミュニティデータ226のどれがプレーヤの完了までの推定期間708をより予測するものであるかを決定するのに有用であり得る。分類ウィンドウ704は、現在の状態606にいて、その後、後続の状態608に達したプレーヤのゲームデータを分類し、それらのプレーヤに関連付けられた、現在の状態606から後続の状態に達するための時間を分類テーブル706に記録する。
【0049】
分類テーブル706は、ゲームコース600を完了した他のプレーヤからの時間データを含むことが示されている。例えば、プレーヤ1、2、3、4、nは、それぞれ、46分30秒、35分35秒、32分23秒、49分50秒、52分45秒でゲームコースを完了したことが示されている。分類テーブル706はまた、各プレーヤの効率メトリック及び重み付けメトリックを含むように示されている。ゲームアクション関数232は、効率メトリック及び重み係数が現在のプレーヤのものに最もよく適合するプレーヤを分類するように企図されている。次に、ゲームアクション関数232は、現在のプレーヤと類似の効率メトリック及び重み係数を有する他のプレーヤによって使用された時間に基づいて、完了までの時間708である45分を出力することが示されている。
【0050】
図8A及び8Bは、一実施形態による、プレーヤのゲームコースの完了までの時間がプレーヤに提示されて、プレーヤが決定を下すのを支援するゲーム内シナリオを示す。
図8Aでは、プレーヤは現在、ボスを倒して現在のレベルを完了しようとしている。持続時間情報プラットフォームがレベルを完了するための推定時間(例えば、完了するまでの時間)が約45分であることを通知する通知をプレーヤに提供するまで、プレーヤは、レベルを完了するのにかかる時間が分からない。
【0051】
図8Bでは、持続時間情報プラットフォームは、レベルの完了までの時間は45分と推定されるが、プレーヤが視聴する番組が30分後に放送されることをプレーヤに通知する。持続時間情報プラットフォームは、プレーヤが今すぐレベル完了を試みないように推奨する。
【0052】
図9A及び9Bは、様々な実施形態による、プレーヤが持続的なニーズを満たすのを支援することができる持続時間情報プラットフォームの追加の実施形態を示す。
図9Aでは、ゲームプレイ効率モジュールは、斧の使用に関するゲームアクション入力の欠陥を識別し、そのような欠陥を是正措置とともにプレーヤに通知する。通知は、プレーヤがX‐丸‐Xの組み合わせを実施することにより、斧の使用を改善できることを指定する。通知はまた、デモンストレーションを介してゲーム入力アクションを実施するオプションも提供する。
【0053】
図9Bでは、持続時間情報プラットフォームは、プレーヤに完了までの時間45分を提供する。さらに、持続時間情報プラットフォームは、プレーヤがリソースXの使用(例えば、購入)を選択した場合に、完了までの時間を25分に短縮するオプションをプレーヤに提供する。このようにして、プレーヤは、リソースXを選択するかどうかに関して具体的な持続時間情報を与えられる。ゲーム開発者は、プレーヤが時間を節約するのを支援し得るリソースを特徴とする商取引機会(マイクロトランザクションなど)をさらに与えられる。
【0054】
図10は、一実施形態による、ゲーム内情報プラットフォームが、コンテキスト固有の情報を提供することによって、プレーヤの全体的なゲームプレイ体験をどのように強化できるかを示す。多くの場合、ビデオゲームは、実世界の環境または物体の表現を特徴とする。例えば、ビデオゲームは、第二次世界大戦のヨーロッパや現代のロサンゼルスの街に設定されてよい。さらに、ビデオゲームには、車、武器、公人などの実世界の物体や人物が登場することがある。さらに、ゲーム開発者がゲーム内アクションに関連して述べたいコメントがあってよい。プレーヤの全体的なゲーム体験は、コンテキストに関連する情報に関するボーナス情報をプレーヤに提供することによって強化されてよい。
図10では、プレーヤは、運転している車の車種とモデルに関するボーナス情報が提供されている。プレーヤは、ビデオゲームシーンに現れるランドマークに関するボーナス情報も提供されている。プレーヤが利用できるボーナス情報は、プレーヤプロファイルに記録され得るプレーヤの好みに依存することが企図されている。例えば、プレーヤのプロファイルが、プレーヤが車に関心があるが地理的なランドマークには関心が無いことを示している場合、車に関するボーナス情報は表示されるが、富士山のボーナス情報は表示されなくてよい。
【0055】
図11は、本開示の様々な実施形態の態様を実行するために使用することができる例示的なデバイス1100の構成要素を示す。例えば、
図11は、一実施形態による、クエリに応答してプレーヤが使用する文脈的に関連するゲーム内リソースを顕在化させるため、またはプレーヤが使用する文脈的に関連するストア内リソースを顕在化させるためなど、ユーザを支援するサービスを提供するデバイスを実装するのに好適な例示的なハードウェアシステムを示す。このブロック図は、デバイス1100を示し、デバイス1100は、本開示の実施形態を実施するのに好適なパーソナルコンピュータ、ビデオゲーム機、パーソナルデジタルアシスタント、サーバ、または他のデジタルデバイスを組み込むことができる、またはこれらであってよい。デバイス1100は、ソフトウェアアプリケーションとオプションでオペレーティングシステムとを実行する中央処理装置(CPU)1102を備える。CPU1102は、1つまたは複数の同種または異種の処理コアで構成されてよい。例えば、CPU1102は、1つまたは複数の処理コアを有する1つまたは複数の汎用マイクロプロセッサである。さらなる実施形態は、クエリの解釈、文脈的に関連するリソースの識別、及び文脈的に関連するリソースのビデオゲーム内での即時実施及びレンダリングなど、高並列及び計算集約的なアプリケーションに特に適合したマイクロプロセッサアーキテクチャを有する1つまたは複数のCPUを使用して、実施することができる。デバイス1100は、ゲームセグメントをプレイするプレーヤにローカルに設置されてよい(例えば、ゲーム機)、またはプレーヤから遠隔であってよい(例えば、バックエンドサーバプロセッサ)。
【0056】
メモリ1104は、CPU1102が使用するためのアプリケーション及びデータを記憶する。ストレージ1106は、アプリケーション及びデータ用の不揮発性ストレージ及び他のコンピュータ可読媒体を提供し、固定ディスクドライブ、取り外し可能ディスクドライブ、フラッシュメモリデバイス、及びCD-ROM、DVD-ROM、Blu-ray(登録商標)、HD-DVD、または他の光学記憶デバイス、並びに信号伝送及び記憶媒体を含み得る。ユーザ入力デバイス1108は、1人または複数のユーザからのユーザ入力をデバイス1100へ通信する。ユーザ入力デバイス1108の例には、キーボード、マウス、ジョイスティック、タッチパッド、タッチスクリーン、スチルレコーダもしくはビデオレコーダ/カメラ、ジェスチャを認識する追跡デバイス、及び/またはマイクロフォンが含まれてよい。ネットワークインタフェース1114は、デバイス1100が電子通信ネットワークを介して他のコンピュータシステムと通信することを可能にし、ローカルエリアネットワーク、及びインターネットなどの広域ネットワークにわたる有線通信または無線通信を含み得る。音声プロセッサ1112は、CPU1102、メモリ1104、及び/またはストレージ1106が提供する命令及び/またはデータから、アナログまたはデジタルの音声出力を生成するように適合される。CPU1102、メモリ1104、データストレージ1106、ユーザ入力デバイス1108、ネットワークインタフェース1110、及び音声プロセッサ1112を含むデバイス1100の構成要素は、1つまたは複数のデータバス1122を介して接続される。
【0057】
グラフィックサブシステム1120がさらに、データバス1122及びデバイス1100の構成要素に接続されている。グラフィックサブシステム1120は、グラフィック処理装置(GPU)1116と、グラフィックメモリ1118とを備える。グラフィックメモリ1118は、出力画像の各画素の画素データを記憶するために使用される表示メモリ(例えばフレームバッファ)を含む。グラフィックメモリ1118は、GPU1108と同じデバイスに統合することができる、GPU1116と別個のデバイスとして接続することができる、及び/またはメモリ1104内に実装することができる。画素データは、CPU1102からグラフィックメモリ1118へ直接提供することができる。あるいは、CPU1102は、所望の出力画像を規定するデータ及び/または命令をGPU1116に提供し、これから、GPU1116は1つまたは複数の出力画像の画素データを生成する。所望の出力画像を規定するデータ及び/または命令は、メモリ1104及び/またはグラフィックメモリ1118に記憶することができる。ある実施形態では、GPU1116は、シーンのジオメトリ、照明、シェーディング、質感、動き、及び/またはカメラのパラメータを定義する命令及びデータから、出力画像の画素データを生成する3Dレンダリング機能を含む。GPU1116はさらに、シェーダプログラムを実行することができる1つまたは複数のプログラム可能実行ユニットを含み得る。
【0058】
グラフィックサブシステム1114は、グラフィックメモリ1118から画像の画素データを定期的に出力して、ディスプレイデバイス1110に表示させる。ディスプレイデバイス1110は、デバイス1100からの信号に応答して視覚情報を表示することができる任意のデバイスであってよく、これにはCRT、LCD、プラズマ、及びOLEDディスプレイが含まれる。デバイス1100は、ディスプレイデバイス1110に、例えばアナログ信号またはデジタル信号を提供することができる。
【0059】
プレーヤに文脈的に関連するリソースの顕在化を実証するために特定の実施形態を提供したが、これらは限定としてではなく例として説明したものである。本開示を読んだ当業者は、本開示の趣旨及び範囲に含まれる追加の実施形態を実現するであろう。
【0060】
現在の実施形態のゲームへのアクセス提供など、広範囲な地域にわたり配信されるアクセスサービスは、多くの場合、クラウドコンピューティングを使用することに留意されたい。クラウドコンピューティングとは、動的にスケーラブルで多くの場合仮想化されたリソースがインターネットを介したサービスとして提供されるコンピューティング様式である。ユーザは、ユーザをサポートする「クラウド」の技術的インフラストラクチャのエキスパートである必要はない。クラウドコンピューティングは、サービスとしてのインフラストラクチャ(IaaS)、サービスとしてのプラットフォーム(PaaS)、サービスとしてのソフトウェア(SaaS)などの異なるサービスに分類することができる。クラウドコンピューティングサービスは、多くの場合、ビデオゲームなどの共通のアプリケーションを、ウェブブラウザからアクセスするオンラインで提供するが、ソフトウェア及びデータは、クラウド内のサーバに記憶される。クラウドという用語は、コンピュータネットワーク図におけるインターネットの描かれ方に基づいたインターネットのメタファーとして使用され、複雑なインフラストラクチャを隠し持つことの抽象的概念である。
【0061】
ある実施形態では、ゲームサーバを使用して、ビデオゲームプレーヤのための持続時間情報プラットフォームの操作を実行してよい。インターネット上でプレイされる大抵のビデオゲームは、ゲームサーバへの接続を介して動作する。通常、ゲームは、プレーヤからデータを収集し、収集したデータを他のプレーヤに配信する専用サーバアプリケーションを使用する。他の実施形態では、ビデオゲームは、分散型ゲームエンジンによって実行されてよい。これらの実施形態では、分散型ゲームエンジンは、複数の処理エンティティ(PE)上で実行されてよく、その結果、各PEは、ビデオゲームが実行される所与のゲームエンジンの機能セグメントを実行する。各処理エンティティは、ゲームエンジンからは単なる計算ノードと見なされる。ゲームエンジンは通常、機能的に多様な一連の操作を行って、ユーザが体験する追加のサービスとともにビデオゲームアプリケーションを実行する。例えば、ゲームエンジンは、ゲームロジックを実装し、ゲーム計算、物理的過程、ジオメトリ変換、レンダリング、照明、シェーディング、オーディオ、及び追加のゲーム内またはゲーム関連サービスを実行する。追加のサービスには、例えば、メッセージング、ソーシャルユーティリティ、オーディオ通信、ゲームプレイ再生機能、ヘルプ機能などが含まれてよい。ゲームエンジンは、特定のサーバのハイパーバイザによって仮想化されたオペレーティングシステム上で実行されてよいが、他の実施形態では、ゲームエンジン自体が複数の処理エンティティに分散され、各エンティティはデータセンタの異なるサーバユニットに常駐してよい。
【0062】
この実施形態によると、実行のために各処理エンティティは、各ゲームエンジンセグメントのニーズに応じて、サーバユニット、仮想マシン、またはコンテナであってよい。例えば、ゲームエンジンセグメントがカメラの変換を担当する場合、比較的単純な数学演算(例えば、行列変換)を多数行うことになるので、その特定のゲームエンジンセグメントは、グラフィック処理ユニット(GPU)に関連付けられた仮想マシンと共にプロビジョニングされてよい。より少ないがより複雑な操作を必要とする他のゲームエンジンセグメントは、1つまたは複数のより高出力の中央処理装置(CPU)に関連付けられた処理エンティティと共にプロビジョニングされてよい。
【0063】
ゲームエンジンを分散することにより、ゲームエンジンは、物理サーバユニットの能力に拘束されない弾力性のある計算特性を備える。代わりに、ゲームエンジンは、必要に応じて、ビデオゲームの要求を満たすためにより多いまたは少ない計算ノードと共にプロビジョニングされる。ビデオゲーム及びビデオゲームプレーヤの観点からは、複数の計算ノードに分散されているゲームエンジンは、ゲームエンジンマネージャまたはスーパーバイザがワークロードを分散し、結果をシームレスに統合して、エンドユーザにビデオゲーム出力構成要素を提供するので、単一の処理エンティティで実行される非分散ゲームエンジンと区別できない。
【0064】
ユーザは、少なくともCPU、ディスプレイ、及びI/Oを含むクライアントデバイスにより、遠隔サービスにアクセスする。クライアントデバイスは、PC、携帯電話、ネットブック、PDAなどであってよい。一実施形態では、ゲームサーバ上で実行されるネットワークは、クライアントが使用するデバイスの種類を認識し、採用される通信方法を調整する。別の事例では、クライアントデバイスは、HTMLなどの標準的な通信方法を使用して、インターネットを介してゲームサーバ上のアプリケーションにアクセスする。
【0065】
本開示の実施形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースもしくはプログラム可能な消費者向け電気製品、ミニコンピュータ、及びメインフレームコンピュータなどを含む様々なコンピュータシステム構成で実施されてよい。本開示はまた、有線ベースネットワークまたは無線ネットワークを介してリンクされる遠隔処理デバイスによりタスクが行われる分散コンピューティング環境においても、実施することができる。
【0066】
所与のビデオゲームまたはゲームアプリケーションは、特定のプラットフォーム及び特定の関連コントローラデバイス用に開発されてよいことを、理解されたい。しかし、このようなゲームが、本明細書に提示されるようなゲームクラウドシステムを介して利用可能となる場合、ユーザは、異なるコントローラデバイスでビデオゲームにアクセスしている場合がある。例えば、あるゲームは、ゲーム機及びその関連コントローラ用に開発されている場合があるが、ユーザは、キーボード及びマウスを利用して、パーソナルコンピュータからクラウドベースバージョンのゲームにアクセスしている場合がある。このようなシナリオでは、入力パラメータ設定により、ユーザが利用可能なコントローラデバイス(この事例ではキーボード及びマウス)により生成され得る入力から、ビデオゲームを実行するのに容認できる入力へのマッピングを定義することができる。
【0067】
別の例では、ユーザは、タブレットコンピューティングデバイス、タッチスクリーンスマートフォン、または他のタッチスクリーン駆動デバイスを介して、クラウドゲームシステムにアクセスしてよい。この場合、クライアントデバイス及びコントローラデバイスは、同じデバイス内に一緒に統合され、検出されたタッチスクリーン入力/ジェスチャにより入力が提供される。このようなデバイスでは、入力パラメータ設定により、ビデオゲームのゲーム入力に対応する特定のタッチスクリーン入力を定義してよい。例えば、ユーザがタッチしてゲーム入力を生成することができるタッチスクリーン上の位置を示すために、ビデオゲームの実行中に、ボタン、方向パッド、または他の種類の入力要素が、表示またはオーバーレイされてよい。特定の方向のスワイプまたは特定のタッチ動作などのジェスチャも、ゲーム入力として検出されてよい。一実施形態では、タッチスクリーン上での制御操作にユーザを慣れさせるために、例えばビデオゲームのゲームプレイを始める前に、タッチスクリーンを介してゲームプレイに入力する方法を示すチュートリアルをユーザに提供することができる。
【0068】
ある実施形態では、クライアントデバイスは、コントローラデバイスの接続ポイントとして機能する。すなわち、コントローラデバイスは、無線接続または有線接続を介してクライアントデバイスと通信して、コントローラデバイスからの入力をクライアントデバイスに送信する。今度は、クライアントデバイスが、これらの入力を処理し、次に入力データを、(例えばルータなどのローカルネットワークデバイスを介してアクセスされる)ネットワークを介してクラウドゲームサーバへ送信してよい。しかし、別の実施形態では、コントローラ自体が、このような入力をまずクライアントデバイスを通して通信する必要なく、ネットワークを介して入力を直接クラウドゲームサーバに通信する能力を有するネットワークデバイスであってよい。例えば、コントローラは、ローカルネットワークデバイス(前述のルータなど)に接続して、クラウドゲームサーバとデータを送受信してよい。従って、クライアントデバイスは依然として、クラウドベースのビデオゲームからのビデオ出力を受信して、それをローカルディスプレイ上にレンダリングする必要はあるが、コントローラがクライアントデバイスを迂回して、ネットワークを介して直接クラウドゲームサーバに入力を送信することを可能にすることにより、入力待ち時間が削減され得る。
【0069】
一実施形態では、ネットワーク化されたコントローラ及びクライアントデバイスは、特定の種類の入力を直接、コントローラからクラウドゲームサーバへ、及び他の種類の入力をクライアントデバイスを介して送信するように構成することができる。例えば、入力の検出をコントローラ自体とは別のいずれの追加のハードウェアにも処理にも依存しない入力は、クライアントデバイスを迂回して、ネットワークを介して直接、コントローラからクラウドゲームサーバへ送信することができる。このような入力には、ボタン入力、ジョイスティック入力、埋込型動作検出入力(例えば加速度計、磁力計、ジャイロスコープ)などが含まれてよい。しかしならが、追加のハードウェアを利用する入力、またはクライアントデバイスによる処理を要する入力は、クライアントデバイスによりクラウドゲームサーバに送信することができる。これらは、クラウドゲームサーバへ送信する前にクライアントデバイスにより処理され得る、ゲーム環境からキャプチャされたビデオまたは音声を含んでよい。さらに、コントローラの動作検出ハードウェアからの入力は、キャプチャされたビデオと併せてクライアントデバイスにより処理されて、コントローラの位置及び動作を検出してよく、これは次にクライアントデバイスによりクラウドゲームサーバへ通信される。様々な実施形態によるコントローラデバイスはまた、クライアントデバイスから、または直接クラウドゲームサーバから、データ(例えばフィードバックデータ)を受信し得ることを理解されたい。
【0070】
本明細書で規定される様々な実施形態は、本明細書で開示される様々な特徴を使用する特定の実施態様に組み合わされてよい、または組み立てられてよいことを、理解されたい。従って、提供される例は、可能な例の一部にすぎず、様々な要素を組み合わせることでより多くの実施態様を規定することが可能な様々な実施態様に制限を加えるものではない。ある例では、ある実施態様は、開示されたまたは同等の実施態様の趣旨から逸脱することなく、より少ない要素を含んでもよい。
【0071】
本開示の実施形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースもしくはプログラム可能な消費者向け電気製品、ミニコンピュータ、及びメインフレームコンピュータなどを含む様々なコンピュータシステム構成で実施されてよい。本開示の実施形態はまた、有線ベースネットワークまたは無線ネットワークを介してリンクされる遠隔処理デバイスによりタスクが行われる分散コンピューティング環境においても、実施することができる。
【0072】
方法の操作は特定の順序で記載したが、修正されたゲーム状態を生成するためのテレメトリ及びゲーム状態データの処理が所望の方法で実行される限り、操作間に他のハウスキーピング操作が実行されてもよく、または操作がわずかに異なる時間に起こるように調整されてもよく、またはシステム内に操作を分散することで、処理に関連する様々な間隔で処理操作が起こることを可能にしてもよいことを、理解されたい。
【0073】
1つまたは複数の実施形態はまた、コンピュータ可読媒体上のコンピュータ可読コードとしても製造することができる。コンピュータ可読媒体は、データを記憶できる任意のデータストレージデバイスであり、データは後にコンピュータシステムにより読み出すことができる。コンピュータ可読媒体の例には、ハードドライブ、ネットクワーク接続ストレージ(NAS)、読み出し専用メモリ、ランダムアクセスメモリ、CD-ROM、CD-R、CD-RW、磁気テープ、並びに他の光学及び非光学データストレージデバイスが含まれる。コンピュータ可読媒体は、コンピュータ可読コードが分散方式で記憶及び実行されるように、ネットワーク接続されたコンピュータシステムに分散されたコンピュータ可読有形媒体を含み得る。
【0074】
前述の実施形態は、理解を明確にするために詳細に説明されたが、添付の特許請求の範囲内で特定の変更及び修正を実施できることは明らかであろう。従って、本実施形態は、限定ではなく例示としてみなされるべきであり、本実施形態は、本明細書に記載された詳細に限定されるべきではなく、添付の特許請求の範囲内及び均等物内で修正されてよい。