(57)【要約】オンラインビデオゲームのトーナメントに登録される、２人のプレーヤを特徴付けるデータが受信される。各プレーヤは、オンラインビデオゲームの別個のインスタンスを実行している。オンラインビデオゲームは、２人のプレーヤ間で非同期性である。データは、トーナメントをホストするトーナメントサーバによって受信され、２人のプレーヤと関連付けられたクライアントにゲームデータを提供する、ゲームサーバとは別個である。２人のプレーヤ間のゲームプレーの同期開始のための命令が、生成される。命令は、２人のプレーヤと関連付けられたクライアントに伝送され、命令は、２人のプレーヤのための非同期性のゲームの同期開始をもたらす。関連装置、システム、技術、および物品もまた、説明される。
2019508179.tif 000002
【特許請求の範囲】
【請求項１】
方法であって、
オンラインビデオゲームのトーナメントに登録される２人のプレーヤを特徴付けるデータを受信するステップであって、各プレーヤは、前記オンラインビデオゲームの別個のインスタンスを実行し、前記オンラインビデオゲームは、前記２人のプレーヤ間で非同期性であり、前記データは、前記トーナメントをホストするトーナメントサーバによって受信され、前記トーナメントサーバは、前記２人のプレーヤと関連付けられたクライアントにゲームデータを提供するゲームサーバとは別個である、ステップと、
前記２人のプレーヤ間のゲームプレーの同期開始のための命令を生成するステップと、
前記命令を前記２人のプレーヤと関連付けられた前記クラアントに伝送するステップであって、前記命令は、前記２人のプレーヤのための非同期性ゲームの同期開始をもたらたす、ステップと
を含む、方法。
【請求項２】
前記命令は、前記クライアントによって受信されると、ゲームプレーを開始させる、請求項１に記載の方法。
【請求項３】
各クライアントは、ゲームインスタンスと、前記命令を受信するピアトーナメントモジュールとを含み、前記命令を受信することに応答して、前記ゲームインスタンスとのゲーム開始コールバックを実行することによって、ゲームプレーを開始させる、請求項２に記載の方法。
【請求項４】
各クライアントは、ゲームインスタンスと、前記命令を受信するピアトーナメントモジュールとを含み、前記命令を受信することに応答して、第２の命令を前記ゲームサーバに伝送し、前記ゲームサーバから前記ゲームインスタンスへのゲームデータの通信の開始を引き起こす、請求項２に記載の方法。
【請求項５】
前記命令は、ゲーム開始のための時間を規定する、請求項１に記載の方法。
【請求項６】
各クライアントは、ゲームインスタンスと、前記命令を受信するピアツーピアモジュールとを含み、前記ゲームインスタンスとのゲーム開始コールバックを実行することによって、前記規定された時間に、前記ゲームを開始させる、請求項５に記載の方法。
【請求項７】
各クライアントは、ゲームインスタンスと、前記命令を受信するピアツーピアモジュールとを含み、前記開始するための規定された時間に、第２の命令を前記ゲームサーバに伝送し、前記ゲームサーバから前記ゲームインスタンスへのゲームデータの通信の開始を引き起こす、請求項５に記載の方法。
【請求項８】
各クライアントに、試合識別子、プレーヤ識別子、およびゲームパラメータを伝送するステップであって、前記試合識別子は、前記トーナメントに一意の識別子を規定し、前記プレーヤ識別子は、前記トーナメントへのユーザのエントリのための一意の識別子であり、前記ゲームパラメータは、実行するための各ゲームインスタンスを構成するためのデータを含む、ステップ
をさらに含む、請求項１に記載の方法。
【請求項９】
視聴クライアントによる横並びの視聴のためのゲームプレーの同時ビデオストリーミングを可能にするステップをさらに含む、請求項１に記載の方法。
【請求項１０】
システムであって、
少なくとも１つのデータプロセッサと、
前記少なくとも１つのデータプロセッサによって実行されると、前記少なくとも１つのデータプロセッサに、請求項１−９のいずれかに記載の方法を実施させる命令を記憶するメモリと、
を備える、システム。
【請求項１１】
少なくとも１つのコンピューティングシステムの少なくとも１つのデータプロセッサによって実行されると、請求項１−９のいずれかに記載の方法を実施する、命令を記憶する非一過性コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、２０１６年３月１５日に出願された米国仮特許出願第６２／３０８，８１２号に対する３５  Ｕ．Ｓ．Ｃ  §１１９（ｅ）の下での優先権を主張するものであり、該仮特許出願の全内容は、参照により本明細書中に援用される。
【０００２】
本明細書に説明される主題は、デジタルオンラインビデオゲームトーナメントの臨機応変な作成およびホストに関する。
【背景技術】
【０００３】
ビデオゲームストリーマは、観衆に、彼らのゲームプレーのライブ映像を示すことに関わる。ストリーマが、その視聴者のための双方向、ライブ、かつ対戦式のコンテンツをホストすることを可能にする一般的な解決策がないため、ストリーマは、現在、その観衆に関わるための能力において限定される。
【発明の概要】
【課題を解決するための手段】
【０００４】
ある側面では、オンラインビデオゲームのトーナメントに登録される、２人のプレーヤを特徴付けるデータが受信される。各プレーヤは、オンラインビデオゲームの別個のインスタンスを実行している。オンラインビデオゲームは、２人のプレーヤ間で非同期性である。データは、トーナメントをホストするトーナメントサーバによって受信され、２人のプレーヤと関連付けられたクライアントにゲームデータを提供する、ゲームサーバとは別個である。２人のプレーヤ間のゲームプレーの同期開始のための命令が、生成される。命令は、２人のプレーヤと関連付けられたクライアントに伝送され、命令は、２人のプレーヤのための非同期性のゲームの同期開始をもたらす。
【０００５】
以下の特徴のうちの１つまたはそれを上回るものが、任意の実行可能な組み合わせに含まれ得る。例えば、命令は、クライアントによって受信されると、ゲームプレーを開始させ得る。各クライアントは、ゲームインスタンスと、命令を受信するピアトーナメントモジュールとを含み、命令を受信することに応答して、ゲームインスタンスとのゲーム開始コールバックを実行することによって、ゲームプレーを開始させ得る。各クライアントは、ゲームインスタンスと、命令を受信するピアトーナメントモジュールとを含み、命令を受信することに応答して、第２の命令をゲームサーバに伝送し、ゲームサーバからゲームインスタンスへのゲームデータの通信の開始を引き起こし得る。
【０００６】
命令は、ゲーム開始のための時間を規定し得る。各クライアントは、ゲームインスタンスと、命令を受信するピアツーピアモジュールとを含み、ゲームインスタンスとのゲーム開始コールバックを実行することによって、規定された時間に、ゲームを開始させ得る。各クライアントは、ゲームインスタンスと、命令を受信するピアツーピアモジュールとを含み、開始するための規定された時間に、第２の命令をゲームサーバに伝送し、ゲームサーバからゲームインスタンスへのゲームデータの通信の開始を引き起こし得る。
【０００７】
試合識別子、プレーヤ識別子、およびゲームパラメータが、各クライアントに伝送され得る。試合識別子は、トーナメントに一意の識別子を規定し得る。プレーヤ識別子は、トーナメントへのユーザのエントリのための一意の識別子であり得る。ゲームパラメータは、実行するための各ゲームインスタンスを構成するためのデータを含み得る。
【０００８】
視聴クライアントによる横並びの視聴のためのゲームプレーの同時ビデオストリーミングが、可能にされ得る。
【０００９】
本主題は、ストリーマ（例えば、「イベントホスト」）が、任意のモバイルゲーム内のトーナメントを臨機応変に作成およびホストすることと、視聴者が、ストリーマの観衆のために非公開で作成されるかまたはゲームの全てのプレーヤに公開されるかのいずれかである対戦の中に加入することと、イベントが、任意の観衆のための関与および対戦式プレーのために最適化された様式でホストされることとを可能にするツールを含み得る。
【００１０】
１つまたはそれを上回るコンピューティングシステムの１つまたはそれを上回るデータプロセッサによって実行されると、少なくとも１つのデータプロセッサに、本明細書の動作を実施させる命令を記憶する、非一過性コンピュータプログラム製品（すなわち、物理的に具現化されるコンピュータプログラム製品）もまた、説明される。同様に、１つまたはそれを上回るデータプロセッサと、１つまたはそれを上回るデータプロセッサに結合されるメモリとを含み得る、コンピュータシステムもまた、説明される。メモリは、一時的または恒久的に、少なくとも１つのプロセッサに、本明細書に説明される動作のうちの１つまたはそれを上回るものを実施させる命令を記憶し得る。加えて、本方法は、単一コンピューティングシステム内にあるか、もしくは２つまたはそれを上回るコンピューティングシステム間に分散されるかのいずれかである、１つまたはそれを上回るデータプロセッサによって実施され得る。そのようなコンピューティングシステムは、接続され得、限定ではないが、ネットワーク（例えば、インターネット、無線広域ネットワーク、ローカルエリアネットワーク、広域ネットワーク、有線ネットワーク、または同等物）を経由した接続、複数のコンピューティングシステムのうちの１つまたはそれを上回るもの間の直接接続を介した接続等を含む、１つまたはそれを上回る接続を介して、データおよび／またはコマンドもしくは他の命令または同等物を交換し得る。
【００１１】
本明細書に説明される主題の１つまたはそれを上回る変形例の詳細は、添付図面および以下の説明において記載される。本明細書に説明される主題の他の特徴および利点は、説明、図面、および請求項から明白となるであろう。
【図面の簡単な説明】
【００１２】
【図１】図１は、トーナメントロビーおよびプレーヤが、イベントストリーミングにアクセスすることを可能にするプロセスを図示する、プロセスフロー図である。
【図２】図２は、ピアツーピアデジタルゲームトーナメントを実装するための例示的システムを図示する、システムブロック図である。
【図３】図３は、トーナメントのビデオストリーミングを可能にする、例示的メディア管理サーバを伴うシステムのシステムブロック図である。
【図４】図４は、例示的トーナメント表を図示する。
【図５】図５は、イベントストリーミングビデオ制御およびディスプレイの例示的グラフィックユーザインターフェース（ＧＵＩ）である。
【図６】図６は、非同期性ゲームインスタンスのためのゲームプレーの同期開始の方法を図示する、プロセスフロー図である。
【図７】図７は、ピアトーナメントシステムのコンポーネント間のデータフローを図示する、データフロー図である。
【発明を実施するための形態】
【００１３】
種々の図面内の同様の参照記号は、同様の要素を示す。
【００１４】
本主題は、ストリーマ（例えば、「イベントホスト」）が、任意のモバイルゲーム内のトーナメントを臨機応変に作成およびホストすることと、視聴者が、ストリーマの観衆のために非公開で作成されるかまたはゲームの全てのプレーヤに公開されるかのいずれかである対戦の中に加入することと、イベントが、任意の観衆のための関与および対戦式プレーのために最適化された様式でホストされることとを可能にするツールを含む。
【００１５】
いくつかの実装では、本主題は、そうでなければ非同期性であるゲームの同期化が、ライブトーナメントを可能にすることを可能にし得る。非同期性ゲームは、２人の対戦者のゲームプレーが必ずしも同時に実施されない、ゲームを含む。例えば、１人対戦用ゲームをプレーしている２人のプレーヤのそれぞれは、非同期性ゲームプレーをもたらす。本主題は、２人（またはそれを上回る）プレーヤが、略同時にプレーを開始するように、非同期性ゲームを同期化させるサーバを含み得る。これは、各プレーヤのゲームプレーおよび複数のプレーヤ間のリアルタイム比較のストリーミングを含む、ライブトーナメントを可能にする。そのような比較は、例えば、電子スポーツ（ｅＳｐｏｒｔｓ）トーナメントの一部として実施され得る。
【００１６】
いくつかの実装では、ストリーマは、任意のモバイルゲーム内のトーナメントを臨機応変に作成およびホストし得る。ストリーマは、アカウントにサインアップし、イベントのウェブポータルにアクセスし得る。本ポータルを使用して、ストリーマは、ホストおよびそのストリーミングページ上に表示するためのイベントを作成し得る。ストリーマが、イベントに先立って設定するためのオプションは、イベントの日時、イベントの説明、イベントの参加者数、イベント勝者に配布される賞金、イベントのエントリ料（該当する場合）、イベントがプレーされるであろうゲーム、シードタイプ、ラウンドの時間制限、および同点決勝ゲーム（ｔｉｅｂｒｅａｋｅｒ）時間制限を含む。トーナメントは、運動競技で一般的に見出される１対１による勝ち抜き戦フォーマットに適合するため、「勝ち抜きイベント（ｂｒａｃｋｅｔｅｄ  ｅｖｅｎｔｓ）」と称される。
【００１７】
視聴者は、ストリーマの観衆のために非公開で作成されるかまたはゲームの全てのプレーヤに公開されるかのいずれかである対戦の中に加入し得る。トーナメントロビーおよびイベントストリーミングアクセスの論理は、ストリーマが、２つのユーザ群、すなわち、（１）その現在の観衆および視聴者と、（２）ストリーマに関わりはないが、能動的にゲームをプレーしているユーザとに関わることを可能にする。
【００１８】
第１の視聴者群は、ストリーマのディスプレイ上に設置される自動的に生成される命令を介して、ゲームを容易にダウンロードおよびプレーし得る。ゲーム内から、新たなプレーヤは、自動生成された命令が含まれる試合コードを入力し得る。本試合コードは、ユーザが、イベントのためにサインアップし、必要な場合にエントリチケットを購入し、他の視聴者に対して対戦することを可能にする。
【００１９】
イベントホストは、第２のユーザ群、すなわち、能動的にゲームをプレーするプレーヤを含有または除外するオプションを有する。含有される場合、これらのプレーヤは、ゲームメニューの中からトーナメントに加入するオプションに気づくであろう。これは、空間が、依然として利用可能である場合、トーナメントに登録する能力を含むだけではなく、また、ストリーマページへのリンクを伴うイベントブロードキャストを視聴させるための指示も含む。
【００２０】
イベントは、任意の観衆のための関与および対戦式プレーのために最適化された様式でホストされ得る。イベントホストは、ストリーミング管理サーバを使用してストリーミングし得る。ストリームおよびイベントは、中断時間を低減させ、かつ興奮させる勝ち抜き構造のための可能性を最大化する構造を設定することによって、関与および対戦式プレーを増加させるために最適化される。
【００２１】
第１ラウンドのプレーヤは、類似の技能レベルの対戦者を突き合わせることによって、相互に対してシードされる。これは、敗北の場合でも、ユーザを対戦に引き込む、興奮させる、かつ魅力のある第１ラウンドを確実にする。ラウンドは、次いで、同期化され、非同期性ゲームプレーであるにもかかわらず、対戦者が同時に相互に対してプレーするように、全てのプレーヤに対して同時に開始する。対戦者は、勝ち抜き戦を通したその個々の成績および前進に関する通知および最新情報を、自身のデバイス上で受信する。代替として、プレーヤは、たとえトーナメントから除外されても、イベントストリームを介してリアルタイムにトーナメントの進行を追い得る。
【００２２】
図１は、トーナメントロビーおよびプレーヤが、イベントストリーミングにアクセスすることを可能にするプロセス１００を図示する、プロセスフロー図である。イベントは、図２を参照して以下にさらに説明される、ピアトーナメントモジュールを介して加入され得る。ピアトーナメントモジュールは、トーナメントサーバと関連付けられたソフトウェア開発キット（ＳＤＫ）を使用して、ゲーム開発者によって実装され得る。ユーザが、トーナメントにエントリすることを選択すると、サーバは、イベントホストによって規定される、登録されたユーザの現在の数および参加者の数に基づいて、トーナメント内に利用可能な空きがあるかどうかを検証する。利用可能なスポットがある場合、ユーザは、登録するために先に移動され、そうでなければ、ユーザは、トーナメントが満員であることを通知され、イベントストリームを視聴するための場所に関する情報を提供される。
【００２３】
エントリ料金を伴うイベントに関して、ユーザは、登録の一部として、イベントのためのチケットを購入するように促されるであろう。無料イベントの場合、ユーザは、トーナメントにエントリすることを望むことを確認することによって登録され得る。いったん登録されると、ユーザは、イベントが開始されるまでホームページに呼び戻される。
【００２４】
いったんイベントが開始すると、全ての登録されたユーザは、第１ラウンドが開始していることを通知され得る。後続のラウンドは、勝ち抜きトーナメントと同一の論理に従うであろう。
【００２５】
図４は、例示的トーナメント表４００を図示する。スマートシードは、対戦者を最適な突き合わせに配置し、プレーヤの関与を増加させ、視聴者層の興奮を最大化させる。本特徴は、プレーヤのゲーム技能要素のデータベースおよび判定を使用し、熱戦および驚くべき番狂わせの両方の可能性を最大化させるトーナメント表を生成する。
【００２６】
スマートシードは、以下のプロセス（実施例は、１６人のプレーヤのトーナメントに特有であるが、任意の参加者数のトーナメントに適合するであろう）に従う。全てのプレーヤを評価に基づいてランキングし、＃１と＃２、＃３と＃４、および同等物で対にする。次いで、各勝ち抜き対をシードし、勝ち抜き＃１は、プレーヤ＃１対プレーヤ＃２のゲーム、勝ち抜き＃２は、プレーヤ＃３対プレーヤ＃４のゲーム、および同等物である。次いで、勝ち抜き毎に標準的シード方法を使用し、したがって、勝ち抜き＃１（＃１対＃２）は、勝ち抜き＃２（＃３対＃４）の反対側の勝ち抜きとなろう。
・勝ち抜きシード＃１＝プレーヤシード＃１対＃２
・勝ち抜きシード＃２＝プレーヤシード＃３対＃４
・勝ち抜きシード＃３＝プレーヤシード＃５対＃６
・勝ち抜きシード＃４＝プレーヤシード＃７対＃８
・勝ち抜きシード＃５＝プレーヤシード＃９対＃１０
・勝ち抜きシード＃６＝プレーヤシード＃１１対＃１２
・勝ち抜きシード＃７＝プレーヤシード＃１３対＃１４
・勝ち抜きシード＃８＝プレーヤシード＃１５対＃１６
【００２７】
図２は、ピアツーピアデジタルゲームトーナメントを実装するための例示的システム２００を図示する、システムブロック図である。システム２００は、ゲームのプレーヤ間のトーナメントプレーを可能にする、トーナメントサーバ２６０を含む。
【００２８】
複数のプレーヤ２１０ｉ（ｉ＝１，２，．．．，Ｎ）は、個別のプレーヤクライアント２２０ｉを動作させる。各プレーヤクライアント２２０ｉは、第三者ゲームアプリケーション２３０ｉを含む。ゲームアプリケーション２３０ｉは、任意のオンラインデジタルゲーム（例えば、ビデオゲーム）であり得る。いくつかの実装では、複数のプレーヤ２１０は、相互に対してオンラインで対戦し得る。ゲームは、ゲームアプリケーション２３０を横断して一貫し得る（例えば、プレーヤ２１０が、チェスをプレーする場合、各ゲームアプリケーション２３０は、電子的チェスゲームのインスタンスである）。各ゲームアプリケーション２３０は、ゲームサーバ２５０と通信し、それからゲームデータを受信し得る。ゲームサーバ２５０は、ゲームを動作させるために必要なゲームデータを提供する。ゲームサーバ２５０は、例えば、トーナメントサーバ２６０と別個であり、トーナメントサーバ２６０による限定されたアクセス能力を伴う、第三者ゲームサーバであり得る（例えば、トーナメントサーバ２６０は、ゲームサーバとの通信を有していないか、またはそれに対する限定されたＡＰＩコールアクセスを有するかのいずれかである）。プレーヤクライアント２２０は、モバイルデバイス（例えば、スマートフォン、タブレット、および同等物）を含み得、プレーヤクライアント２２０、ゲームサーバ２５０、およびトーナメントサーバ２６０は、インターネット等のネットワークを経由して、トーナメントを実装し得る。
【００２９】
各ゲームアプリケーション２３０は、ピアトーナメントモジュール２４０ｉを含む。ピアトーナメントモジュール２４０は、ゲームアプリケーション２３０に統合し、プレーヤ２１０が、オンラインゲーム対戦に登録および参加することを可能にする。ピアトーナメントモジュール２４０は、トーナメントサーバ２６０と通信し、協働する。ゲームアプリケーション２３０が、試合（例えば、ゲームインスタンス）を起動している間、ゲームアプリケーション２３０は、関連付けられたプレーヤ２１０が、ゲームと相互作用する（例えば、プレーする）につれて経時的に変化する内部ゲーム状態を有する。ピアトーナメントモジュール２４０は、ゲーム状態データを周期的および／または継続的に捕捉し、捕捉されたゲーム状態をトーナメントサーバ２６０に伝送し得る。ゲーム状態データは、キー押下、マウス／ジョイスティック／方向パッド入力、および同等物等のインターフェースへのユーザ入力の特徴付けを含む、ユーザアクションデータを含み得る。トーナメントサーバ２６０は、複数のピアトーナメントモジュール２４０から、ゲーム状態を受信し得る。試合は、ゲーム状態を共有しないという点において、別個であり得る。例えば、各ゲームアプリケーション２３０は、非同期性の単一プレーヤゲームであり得る。いくつかの実装では、試合は、ゲーム状態を共有する（例えば、複数のプレーヤが、１つのゲーム環境内で相互作用する）。
【００３０】
いくつかの実装では、ピアトーナメントモジュール２４０およびトーナメントサーバ２６０は、ゲームアプリケーション２３０ｉにゲームデータを提供しない。言い換えると、いくつかの実装では、それらは、ゲームインスタンスを実装することに寄与せず、むしろ、ゲームを観察し、ゲーム状態を捕捉し、マルチ試合トーナメント機能性の別個の層を可能にする。
【００３１】
プレーされているゲーム（例えば、ゲームインスタンス２３０ｉ）が、非同期性であるとき、ゲームサーバ２５０および／またはゲームインスタンス２３０ｉは、ゲームプレーを同時に開始させるための根本的な機構を有していない。プレーヤが、非同期性ゲームを使用して同時に対戦するようにライブトーナメントを可能にするために、本主題は、複数の非同期性ゲームの開始を同期化するステップを含み得る。これは、ライブトーナメントを可能にし、かつゲームプレーの直接比較（例えば、２つのビデオフィードの比較をストリーミングするコメンテータによって）を可能にし得る。いくつかの実装では、トーナメントサーバ２６０およびピアトーナメントモジュール２４０ｉは、ゲームプレーの同期開始を可能にし得る。
【００３２】
図６は、非同期性ゲームインスタンスのためのゲームプレーの同期開始の方法６００を図示する、プロセスフロー図である。トーナメントは、トーナメントをホストし、かつゲームサーバ２５０と別個のトーナメントサーバ２６０によって実装され得、これは、各プレーヤと関連付けられたクライアントにゲームデータを提供し得る。
【００３３】
６１０において、オンラインビデオゲームのトーナメントに登録された２人のプレーヤを特徴付けるデータが、受信され得る。いったんトーナメントサーバが、関連付けられたクライアントから、プレーヤがトーナメントに参加することを望むという要求を受信すると、プレーヤが、登録され得る。
【００３４】
６２０において、２人のプレーヤ間のゲームプレーの同期開始のための命令が、生成され得る。いったんトーナメント試合のために必要とされる全てのプレーヤクライアントが登録し、かつトーナメントサーバ２６０からのハンドシェイクを受け入れると、命令が、生成され得る。
【００３５】
６３０において、命令は、プレーヤクライアントに伝送される。命令は、プレーヤクライアントのための非同期性ゲームの同期開始を引き起こす。試合は、両方のクライアントが、類似した時間にゲームプレーを開始するとき、同期化されるように考慮され得、これは、１０秒以内、５秒以内、２秒以内、１秒以内、０．１秒以内、またはそれ未満の範囲内であり得る。
【００３６】
いくつかの実装では、命令は、クライアントによって受信されると、ゲームプレーを開始させる。ピアトーナメントモジュール２４０ｉは、命令を受信し、ゲームインスタンス２３０ｉとのゲーム開始コールバックを実行し得る。コールバックは、引数として他のコード（本場合、ゲームインスタンス２３０ｉ）に伝達される実行可能なコードを含み得、これは、所与の時間において引数を呼び戻す（実行する）ことが期待されている。本実行は、同期性コールバックにおけるように即座であり得る、または非同期性コールバックにおけるように後の時間に生じる場合がある。
【００３７】
いくつかの実装では、ピアトーナメントモジュール２４０ｉは、別の命令をゲームサーバ２５０に伝送し、ゲームサーバ２５０から個別のゲームインスタンス２３０ｉへのゲームデータの通信の開始を引き起こし得る。本第２の命令は、第１の命令をトーナメントサーバ２６０から受信することに応答して送信され得る。
【００３８】
いくつかの実装では、命令は、ゲーム開始のための時間を規定する。例えば、命令は、各ゲームインスタンス２３０ｉが、時刻９：００．００にゲームプレーを開始すべきであることを規定し得る。いくつかの実装では、ピアトーナメントモジュール２４０ｉは、命令を受信し、規定された時間において、または規定された時間に開始するための命令を受けてのいずれかによって、ゲームインスタンスとのゲーム開始コールバックを実行することによって、ゲームを規定された時間に開始させ得る。
【００３９】
いくつかの実装では、ピアトーナメントモジュール２４０ｉは、別の命令をゲームサーバ２５０に伝送し、ゲームサーバ２５０から個別のゲームインスタンス２３０ｉへのゲームデータの通信の開始を引き起こし得る。本第２の命令は、規定された時間において、または規定された時間に通信を開始するための命令を受けて伝送され得る。
【００４０】
図７は、ピアトーナメントシステム２００のコンポーネント間のデータフローを図示する、データフロー図である。図示されるシステムは、２人のプレーヤを含み、それぞれは、個別のゲームインスタンス（２３０１および２３０２）と、ピアトーナメントモジュール（２４０１および２４０２）とを有する。２人のプレーヤが図示されるが、２人を上回るプレーヤも可能であることを理解されたい。
【００４１】
７０５において、各ピアトーナメントモジュール（２４０１および２４０２）は、トーナメントに加入するための要求を送信する。プレーヤは、次いで、トーナメントに登録されるように考慮され得る。プレーヤは、適切な試合があるまで、ロビーに加入し得る。トーナメントサーバ２６０は、誰がいつ試合をするかを判定し得る。
【００４２】
例えば、プレーヤ１は、例えば、アプリケーションプログラミングインターフェース（ＡＰＩ）コールを介してトーナメントサーバ２６０に通知することによって、試合に加入するよう試みる。トーナメントサーバ２６０は、試合を見出すよう試み始める。同様に、プレーヤ２は、例えば、ＡＰＩコールを介してトーナメントサーバに通知することによって、試合に加入するよう試み得る。いくつかの実装では、プレーヤが、待機する間、そのクライアントのユーザインターフェース制御は、その個別のゲームインスタンス（２３０１および２３０２）に伝達され得、したがって、ゲームインスタンス（２３０１および２３０２）は、試合の期間にわたってそれ自体のユーザインターフェースを表示し得る。トーナメントサーバ２６０は、プレーヤ１およびプレーヤ２が、ともに突き合わせられ得るかを判定する。突き合わせプロセスは、要素の数、例えば、現在または他のゲーム内の相対的技能および／または経験レベルに依存し得る。
【００４３】
第１のプレーヤは、ホストとして考慮され得、最初の順序を開始し得る。いくつかの実装では、ピアトーナメントモジュール２４０ｉは、認証トークンをトーナメントサーバ２６０に伝達し得、したがって、トーナメントサーバは、加入要求の正当性を確認し得る。
【００４４】
７１０において、トーナメントサーバ２６０および各ピアトーナメントモジュール（２４０１および２４０２）は、ハンドシェイクを実施し、加入プロセスを完成させ得る。ハンドシェイクプロセスは、プレーヤが、突き合わせを開始したが、試合が行われる前に退出するケースを取り扱い得る。試合を開始させることに先立って、トーナメントサーバ２６０は、ピアトーナメントモジュール２４０ｉに、全てのプレーヤが、依然として、プレーするために待機していることを確認する。ピアトーナメントモジュール２４０が応答しない場合、トーナメントサーバ２６０は、応答したプレーヤの突き合わせに戻り得る。
【００４５】
７１５において、同期化命令が、生成され、トーナメントサーバ２６０から各ピアトーナメントモジュール（２４０１および２４０２）に伝送され得る。同期化命令は、成功した突き合わせプロセスに応答して生成および伝送され得る。加えて、トーナメントサーバ２６０は、各プレーヤと関連付けられたアカウントからエントリ料金を引き落とすことができる。
【００４６】
７２０において、トーナメントサーバ２６０はまた、試合識別子（ＩＤ）と、プレーヤＩＤと、ゲームパラメータとを含む、データを伝送し得る。ピアトーナメントモジュール（２４０１および２４０２）が、依然として、ユーザインターフェース制御を有する場合、その制御は、個別のゲームインスタンス（２３０１および２３０２）に伝達され得る。試合ＩＤは、トーナメントの所与の具体的なインスタンスのための一意のＩＤ（例えば、数字の識別子）を含み得る。プレーヤＩＤは、トーナメントへのユーザのエントリのための一意のＩＤ（例えば、数字のＩＤ）を含み得る。ゲームパラメータは、ゲームプレーの実行／開始のための各ゲームインスタンスを構成するための任意の情報を含み得る。例えば、ゲームパラメータは、時限と、レベルと、レベル能力（例えば、時限＝３、試合場＝無作為、レベル＿能力＝無効）とを含み得る。伝送される試合ＩＤおよびゲームパラメータが、プレーヤ毎に同一であり得る一方、プレーヤＩＤは、異なり得る。
【００４７】
７２５において、ゲームパラメータは、個別のピアトーナメントモジュール（２４０１および２４０２）から個別のゲームインスタンス（２３０１および２３０２）に伝達され得る。
【００４８】
７３０において、各ピアトーナメントモジュール（２４０１および２４０２）は、ゲームインスタンス（２３０１および２３０２）によるゲームプレーの開始を引き起こし得る。これは、例えば、コールバックまたは他のＡＰＩコールを実行することによって実施され得る。いくつかのインスタンスでは、コールバックは、ゲームパラメータを使用して実行され得る。
【００４９】
７３５において、通常のゲームプレーが、各ゲームインスタンス（２３０１および２３０２）とゲームサーバ２５０との間で同時に進行する。
【００５０】
いくつかの実装では、プレーヤは、突き合わせの失敗が宣言される前に、限定される量の時間のみにわたって、試合のために待機する（例えば、ロビー内で）。いくつかの実装では、ピアトーナメントモジュール２４０ｉは、規定された量の時間待機し得、その後、次いで、エラーを表示し、ロビーから退出するか、またはプレーヤが待機し続けることを可能にするかのいずれかとなる。いくつかの実装では、トーナメント作成者またはホストは、最大許容待機時間を規定し得る。
【００５１】
いくつかの実装では、プレーヤクライアント接続情報が、トーナメントサーバ２６０によって記憶される。これは、接続解除されたクライアントによる再接続を可能にし得る。接続情報は、ＡＰＩキーと、インターネットプロトコル（ＩＰ）アドレスおよび／またはドメイン名と、接続のためのポートとを含み得る。既存の試合識別およびトーナメントプレーヤ識別は、トーナメントサーバ２６０を介して、プレーヤを識別し（再接続の間）、個々の試合のためにプレーヤを接続するために使用され得る。
【００５２】
いくつかの実装では、トーナメントサーバ２６０は、開発者ポータル内のトーナメント管理、プレーヤ突き合わせ、支払処理およびユーザ残高管理、ビデオストリーミング、詐欺／偽造検出、ならびにゲーム分析を提供し得る。
【００５３】
いくつかの実装では、ゲームの通常のプロセスによるゲーム内スコアおよび最終スコア報告が、発生する。
【００５４】
いくつかの実装では、トーナメントサーバは、１つまたはそれを上回る乱数または乱数シードを生成し、同一の数字および／またはシードを、ゲームインスタンスの実行内での使用のために、全ての参加しているクライアントに送信またはストリーミングし得る。各ゲームインスタンスに、同一の乱数を使用させることによって、ゲームインスタンス間の公正性は、改良され得る。
【００５５】
図３は、トーナメントのビデオストリーミングを可能にする、例示的メディア管理サーバ３１０を伴うシステム３００のシステムブロック図である。例示的システム３００は、図２を参照して上記で説明されるようなコンポーネントを含み、メディア管理サーバ３１０をさらに含む。メディア管理サーバ３１０は、トーナメントホスト、参加者、または第三者（ストリーマ３２０とも称される）であり得る、トーナメントコメンテータ３２０とインターフェースをとる。コメンテータ３２０は、クライアントデバイスであり得る。メディア管理サーバ３１０は、トーナメントコメンテータ３２０が報道するための、例えば、電子スポーツトーナメント等の自動化された仮想ブロードキャストスタジオを提供し得る。メディア管理サーバ３１０は、クライアントからビデオストリームを、および／またはトーナメントサーバ２６０からゲーム状態データを受信し、コメンテータが、トーナメントに関連する一意のコンテンツを生成することを可能にし得る。コメンテータビデオストリームは、視聴クライアント３３０および／またはプレーヤ２１０に提供され、および／またはトーナメントコメンテータ３２０のために提案されるブロードキャストを組み立てるために使用され得る。メディア管理サーバ３１０は、ライブビデオフィード（トーナメントコメンテータ３２０によって制御されるように）をプレーヤ２１０および／または視聴クライアント３３０にブロードキャストし得る。
【００５６】
図５は、イベントストリーミングビデオ制御およびディスプレイの例示的グラフィックユーザインターフェース（ＧＵＩ）５００である。イベントストリーミングビデオ制御およびディスプレイ５００は、トーナメントを効率的かつ魅力のある様式でもたらすための能力を伴うストリーマを提供するインターフェースをツールに含む。ビデオ制御は、ウェブブラウザ内で利用可能であり、ストリーマに、以下の能力、すなわち、上位の成績優秀な対戦者のリプレーを自動的に示すこと、個々の対戦者のゲームプレーを、プレーヤシード、ラウンド、同点決勝ゲームになった試合、およびプレーヤの敵対者が終了したかどうかに基づいて選択し、ストリーミングすること、ラウンドおよび／またはシードによってビデオプレー順序をソートすること、ならびにリアルタイム比較のために複数のプレーヤのリプレーを横並びに表示することを提供し得る。
【００５７】
ビデオ制御パネル５００は、ストリーマ３２０が、ビデオまたはクリップを視聴する、選択する、および再生するためのビデオキューインターフェース５１０を含む。ビデオキューインターフェース５１０は、ストリーマが、そのストリームにブロードキャストされているものと相互作用し、それを制御することを可能にする。ビデオキューインターフェース５１０は、２つのコンポーネント、すなわち、現在再生中のストリーム５１０Ｂと、キュー５１０Ａとを含む。
【００５８】
現在再生中のストリーム５１０Ｂは、ストリーマ３２０にどのリプレーが現在ブロードキャストされているか（例えば、ライブビデオストリームまたはフィード）を示す。これは、ストリーマ３２０が、観衆と共有されないであろうように、ストリームをプレビューする、またはリプレーを調節するためのウィンドウを使用しながらでも、現在共有しているものを監視することを可能にする永続的空間である。
【００５９】
キュー５１０Ａは、ストリーマ３２０に、ビデオ部分またはリプレーが示されるであろう順序を制御するための能力を与える。ストリーマ３２０は、次に示したい個々のビデオ部分を追加する、またはブロードキャストされるために次に来るべきビデオの順序を変更し得る。ストリーマ３２０が、キューに何も追加しないことを選択する場合、またはキューが、空になる場合、システムは、試合横断比較を使用して、例えば、上位３人の成績優秀なプレーヤ２１０のうちの１人のビデオ、１分の時間期間にわたって最高スコア変化を有するプレーヤ２１０のビデオ、および同等物をストリーミングすることによって、プレーヤのうちの１人のビデオを自動的にストリーミングし得る。
【００６０】
ビデオ制御パネル５００は、トーナメント試合に参加するプレーヤのリスト５２０を含み、そのためのビデオ捕捉は、より幅広い観衆へのブロードキャストのために利用可能である。プレーヤのリスト５２０は、そのリプレーをプレビュー５２０Ａする、またはキュー５１０Ａに追加５２０Ｂするオプションを含む。ビデオ制御パネル５００はさらに、履歴ゲームリプレーをプレビュー５４０Ａする、またはキュー５１０Ａに追加５４０Ｂするオプションとともに、ビデオおよび履歴ゲームリプレーのリスト５４０を視聴するためのプレビュー空間５３０を含む。
【００６１】
いくつかの実装では、メディア管理サーバ３１０は、プレーヤクライアント２２０において捕捉されるビデオを、ハイライトリールおよびキーセグメントに自動的にブレークダウンし、ストリーマ３２０のために提案されるブロードキャストを組み立てる。したがって、メディア管理サーバ３１０は、ストリーマ３２０自体の「舞台裏分析家チーム」として作用する、自動化された機能性を可能にする。これは、ストリーマ３２０が、１人のチームとして機能し、過去の映像または統計値を調べるために、ライブストリームから中断する必要なく、再生するための正しい映像を容易に選択することを可能にする。自動分析および特徴は、リプレーおよびプレーヤリストをキュー５１０Ａに、トーナメント内のその現在の順位の順序で出現させる、リプレーの順位をランキングするステップを含む。これは、任意のプレーヤのためのリプレーを、彼らの順位に基づいて見出すことを容易にする。ビデオを鑑賞することに先立って、ストリーマは、彼らが選択しているプレーヤのレベルおよびそのゲームの結果がどうなり得るかを把握し得る。
【００６２】
いくつかの変形例が、上記で詳細に説明されているが、他の修正または追加もまた、可能である。
【００６３】
本明細に説明される主題の１つまたはそれを上回る側面または特徴は、デジタル電子回路、集積回路、特別に設計された特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、コンピュータハードウェア、ファームウェア、ソフトウェア、および／またはそれらの組み合わせにおいて実現され得る。これらの種々の側面または特徴は、少なくとも１つのプログラム可能なプロセッサを含む、プログラム可能なシステム上で実行可能および／または解釈可能な１つまたはそれを上回るコンピュータプログラム内の実装を含み得、これは、特殊または汎用目的であり、記憶システム、少なくとも１つの入力デバイス、少なくとも１つの出力デバイスからデータおよび命令を受信し、それにデータおよび命令を伝送するために結合され得る。プログラム可能なシステムまたはコンピューティングシステムは、クライアントおよびサーバを含み得る。クライアントおよびサーバは、概して、相互に遠隔であり、典型的には、通信ネットワークを通して相互作用する。クライアントおよびサーバの関係は、個別のコンピュータを起動するコンピュータプログラムによって、かつ相互にクライアント／サーバの関係を有することによって生じる。プログラム可能なシステムまたはコンピューティングシステムは、タブレット、電話、ラップトップ、ゲームプラットフォーム、および他の同様のデバイス等のモバイルデバイスを含み得る。
【００６４】
プログラム、ソフトウェア、ソフトウェアアプリケーション、アプリケーション、コンポーネント、またはコードとも称され得る、これらのコンピュータプログラムは、プログラム可能なプロセッサのための機械命令を含み、高レベル手続き型言語、オブジェクト指向プログラミング言語、関数プログラミング言語、論理型プログラミング言語、および／またはアセンブリ／機械言語で実装され得る。本明細書に使用されるように、用語「機械可読媒体」は、機械可読信号として機械命令を受信する機械可読媒体を含む、プログラム可能なプロセッサに、機械命令および／またはデータを提供するために使用される、例えば、磁気ディスク、光ディスク、メモリ、およびプログラム可能な論理デバイス（ＰＬＤ）等の任意のコンピュータプログラム製品、装置、および／またはデバイスを指す。用語「機械可読信号」は、プログラム可能なプロセッサに機械命令および／またはデータを提供するために使用される任意の信号を指す。機械可読媒体は、そのような機械命令を、例えば、非一過性ソリッドステートメモリ、磁気ハードドライブ、または任意の均等な記憶媒体等のように、非一過性に記憶し得る。機械可読媒体は、代替として、または加えて、そのような機械命令を、例えば、１つまたはそれを上回る物理的プロセッサコアと関連付けられた、プロセッサキャッシュまたは他のランダムアクセスメモリ等のように、一過性の様式で記憶し得る。
【００６５】
ユーザとの相互作用を提供するために、本明細書に説明される主題の１つまたはそれを上回る側面または特徴は、情報をユーザに表示するためのディスプレイデバイス、例えば、ブラウン管（ＣＲＴ）または液晶ディスプレイ（ＬＣＤ）もしくは発光ダイオード（ＬＥＤ）モニタと、ユーザが入力をコンピュータに提供し得る、キーボードおよびポインティングデバイス、例えば、マウスまたはトラックボールとを有する、コンピュータ上に実装されることができる。他の種類のデバイスも同様に、ユーザとの相互作用を提供するために使用されることができる。例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであることができ、ユーザからの入力は、限定されないが、音響、音声、または触覚入力を含む、任意の形態で受信されてもよい。他の可能性として考えられる入力デバイスとして、タッチスクリーンまたは他のタッチセンサ式デバイス、例えば、単一または多点抵抗もしくは容量トラックパッド、音声認識ハードウェアおよびソフトウェア、光学スキャナ、光学ポインタ、デジタル画像捕捉デバイスおよび関連付けられた解釈ソフトウェア、ならびに同等物が挙げられるが、それらに限定されない。
【００６６】
上記の説明および請求項では、「〜のうちの少なくとも１つ」または「〜のうちの１つまたはそれを上回るもの」等の語句が、要素または特徴の接続語リストに続いて生じ得る。用語「および／または」もまた、２つまたはそれを上回る要素または特徴のリスト内に生じ得る。それが使用される文脈によって別様に暗示的または明示的に矛盾しない限り、そのような語句は、一覧にされた要素もしくは特徴のいずれかを個々に、または他の列挙された要素もしくは特徴のいずれかとの組み合わせにおける列挙された要素または特徴を意味することが意図される。例えば、語句「ＡおよびＢのうちの少なくとも１つ」、「ＡおよびＢのうちの１つまたはそれを上回るもの」、ならびに「Ａおよび／またはＢ」はそれぞれ、「Ａのみ、Ｂのみ、またはＡおよびＢともに」を意味することが意図される。３つまたはそれを上回るアイテムを含むリストに関しても、類似解釈が意図される。例えば、語句「Ａ、Ｂ、およびＣのうちの少なくとも１つ」、「Ａ、Ｂ、およびＣのうちの１つまたはそれを上回るもの」、ならびに「Ａ、Ｂ、および／またはＣ」はそれぞれ、「Ａのみ、Ｂのみ、Ｃのみ、ＡおよびＢともに、ＡおよびＣともに、ＢおよびＣともに、またはＡおよびＢおよびＣともに」を意味することが意図される。加えて、上記および請求項における用語「〜に基づく」の使用は、列挙されていない特徴または要素もまた許容可能であるように、「少なくとも部分的に〜に基づく」を意味することが意図される。
【００６７】
本明細書に説明される主題は、所望の構成に応じて、システム、装置、方法、および／または物品において具現化されることができる。前述の説明に記載の実装は、本明細書に説明される主題と一貫した全実装を表すわけではない。代わりに、これらは、単に、説明される主題に関連する側面と一貫するいくつかの実施例である。いくつかの変形例が、前述で詳細に説明されたが、他の修正または追加も、可能性として考えられる。特に、さらなる特徴および／または変形例が、本明細書に記載されるものに加え、提供されることができる。例えば、前述の実装は、開示される特徴の種々の組み合わせおよび部分的組み合わせおよび／または前述で開示されるいくつかのさらなる特徴の組み合わせおよび部分的組み合わせを対象とすることができる。加えて、付随の図に描写される、および／または本明細書に説明される、論理フローは、望ましい結果を達成するために、必ずしも、示される特定の順序または連続的順序を要求しない。他の実装も、以下の請求項の範囲内にあり得る。
【図１】
2019508179.tif 000003
【図２】
2019508179.tif 000004
【図３】
2019508179.tif 000005
【図４】
2019508179.tif 000006
【図５】
2019508179.tif 000007
【図６】
2019508179.tif 000008
【図７】
2019508179.tif 000009
【国際調査報告】
2019508179.tif 000010
2019508179.tif 000011
2019508179.tif 000012