(57)【要約】  複数のゲーム・プレイヤーに対してゲームを設定することを可能にするサービス。各々がコンピュータゲームをプレイすることができるコンピューティング・デバイスを有する多数のゲーム・プレイヤーがこのサービスによって互いにリンクされる。このサービスは、１人プレイヤーが、１つの共通のゲーム・セッションを、これらプレイヤーのサブセットがそのゲームを同時に同一レベルによって開始することができるように設定することを可能にする。加えて、このサービスは、ゲーム・コンペティションを構成し、これらゲーム・プレイヤーのサブセットの間でプレイできるようにすることを可能にする。
2008546469.tif 000002
【特許請求の範囲】
【請求項１】
マルチ・プレイヤー向けコンピュータ・ベースのゲームをプレイするためのシステムであって、
複数のプレイヤーに関する情報と、コンピューティング・デバイス上で動作する複数の異なるゲームに関する情報とを備えたデータベースを有するサービスと、
プレイヤーから、前記複数の異なるゲームのうちの１つの選択と前記選択されたゲームに対する構成設定とを受け取る、前記サービスに結合された入力デバイスと、
複数のコンピューティング・デバイスから、前記構成設定を指し示す情報を収容するゲーム終了メッセージを受け取る、前記サービスに結合された入力デバイスと、
前記構成設定を示す情報を含む開始メッセージを、複数のプレイヤーと前記複数の異なるゲームのうちの前記１つとに応じて選択された複数のコンピューティング・デバイスに送る前記サービスに結合された出力デバイスと
を備えることを特徴とするシステム。
【請求項２】
前記複数のプレイヤーに関する前記情報は、前記プレイヤーのゲーム・プレイのスキルを指し示す情報を備えることを特徴とする請求項１記載のシステム。
【請求項３】
前記サービスは、前記プレイヤーの前記ゲーム・プレイのスキルに応じて、プレイヤーのサブセットをマッチングする能力を有することを特徴とする請求項２記載のシステム。
【請求項４】
前記複数のコンピューティング・デバイスは、前記複数の異なるゲームのうちの前記１つの少なくとも一部のローカル・コピーを備えることを特徴とする請求項１記載のシステム。
【請求項５】
前記複数のコンピューティング・デバイスの少なくとも１つは、前記複数のコンピューティング・デバイスの前記少なくとも１つについてのプレイヤーのアクションを指し示す少なくとも１つのパラメータを、前記データベース内に格納する前記サービスに報告することを特徴とする請求項４記載のシステム。
【請求項６】
前記サービスは、前記サービスが複数のプレイヤーをマッチングする能力を有するように、複数の異なるゲームの少なくとも１つから、前記ゲームのパラメータに関する情報を提供する構成情報を受け取ることを特徴とする請求項３記載のシステム。
【請求項７】
前記サービスは、コンペティション内に残っているプレイヤーに応じて、前記複数の前記プレイヤーに複数の開始または終了メッセージを提供することを特徴とする請求項１記載のシステム。
【請求項８】
マルチ・プレイヤー向けコンピュータ・ベースのゲームをプレイするための方法であって、
複数のプレイヤーに関する情報と、コンピューティング・デバイス上で動作する複数の異なるゲームに関する情報とを備えたデータベースを維持すること、
プレイヤーから前記複数の異なるゲームのうちの１つの選択と、前記選択されたゲームに対する構成設定とを受け取ること、および
前記構成設定を指し示す情報を収容する開始メッセージを、前記複数のプレイヤーと前記複数の異なるゲームのうちの前記１つとに応じて選択された複数のコンピューティング・デバイスに送ること
を備えることを特徴とする方法。
【請求項９】
前記複数のプレイヤーに関する前記情報は、前記プレイヤーのゲーム・プレイのスキルを指し示す情報を備えることを特徴とする請求項８記載の方法。
【請求項１０】
前記プレイヤーの前記ゲーム・プレイのスキルに応じてプレイヤーのサブセットをマッチングすることを備えることを特徴とする請求項９記載のシステム。
【請求項１１】
前記複数のコンピューティング・デバイスの少なくともサブセットは、前記複数の異なるゲームのうちの前記１つの少なくとも一部のローカル・コピーを備えることを特徴とする請求項８記載の方法。
【請求項１２】
前記複数のコンピューティング・デバイスの前記サブセットのうちの少なくとも１つから、複数のコンピューティング・デバイスの少なくとも１つについてのプレイヤーのアクションを指し示す少なくとも１つのパラメータを受け取り、前記データベース内に格納することを特徴とする請求項１１記載の方法。
【請求項１３】
前記サービスが複数のプレイヤーをマッチングする能力を有するように、複数の異なるゲームの少なくとも１つから、前記ゲームのパラメータに関する情報を提供する構成情報を受け取ることを備えることを特徴とする請求項１０記載の方法。
【請求項１４】
コンペティション内に残っているプレイヤーに応じて、複数の開始メッセージを前記複数のプレイヤーに提供することを備えることを特徴とする請求項８記載の方法。
【請求項１５】
コンピュータ・ベースのゲーム・プレイのためのシステムであって、
複数のゲーム・プレイヤーがネットワーク接続を介して接続することができるサービスと、
複数のゲーム・プレイヤーからの第１のゲーム・プレイヤーをグループに関連付ける、前記サービスによって維持される第１のセットのコンピュータ実行可能命令と、
複数のゲーム・プレイヤーからの少なくとも１人の他のゲーム・プレイヤーを前記グループに関連付ける第２のセットのコンピュータ実行可能命令と、
前記第１のゲーム・プレイヤーおよび前記少なくとも１人の他のゲーム・プレイヤーに第１の選択されたゲームのゲーム・プレイを開始するメッセージを送る第３のセットのコンピュータ実行可能命令と、
前記第１のゲーム・プレイヤーおよび前記少なくとも１人の他のゲーム・プレイヤーに第２の選択されたゲームのゲーム・プレイを開始するメッセージを送る第４のセットのコンピュータ実行可能命令と
を備え、
前記サービスは、前記第１および第２の選択されたゲームと独立してグループの関連付けを維持することを特徴とするシステム。
【請求項１６】
前記サービスは、前記グループに関連付けられる各ゲーム・プレイヤーに、前記第１の選択されたゲームの開始を示すメッセージを送ることを特徴とする請求項１５記載のシステム。
【請求項１７】
前記第１のセットのコンピュータ実行可能命令は、前記グループを形成する第１のゲーム・プレイヤーからメッセージを受け取るコンピュータ実行可能命令を備えることを特徴とする請求項１５記載のシステム。
【請求項１８】
第２のセットのコンピュータ実行可能命令は、グループに参加する少なくとも１人の他のゲーム・プレイヤーからメッセージを受け取るコンピュータ実行可能命令を備えることを特徴とする請求項１５記載のシステム。
【請求項１９】
更に、少なくとも第１のゲーム・プレイヤーおよび少なくとも１人の他のゲーム・プレイヤーから、ゲームの終了を指し示すメッセージを受け取る第５のセットのコンピュータ実行可能命令を備えることを特徴とする請求項１８記載のシステム。
【請求項２０】
更に、前記第１のゲーム・プレイヤーから、グループの解散を示すメッセージを受け取る第６のセットのコンピュータ実行可能命令を備えることを特徴とする請求項１５記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にゲームおよびマルチメディア・デバイスの分野に関する。より詳細には、本発明は、オンライン・ゲーム・セッションに向けられる。
【背景技術】
【０００２】
オンライン・ゲームにおいて、ゲーム・ホスティング・デバイスおよびゲーム開発者は、オンライン・ゲーム体験を追跡し、パーソナル化するための多くの方法を作り出してきた。現存するシステムの１つの短所は、多くの機能が互いに独立して成長したことである。ゲームは、ゲーマーの試行錯誤に関するデータのＢＬＯＢを中央サービスに送信するが、このサービスは、これらデータをゲーム・コンテクストの外部で理解しおよび集計する方法は有さない。ゲームは、それら自身のウェブサイトをホストすることはできるが、ここに表示されるデータは他のゲームから例外なくアクセスできるわけではない。
【０００３】
したがって、ある意味において、このサービスとゲームは、ゲーマーに対して、膨大ではあるが、分離された、２つの平行なコミュニティを提供する。第１に、ゲーム・コミュニティにおいては、ゲームをプレイしている間に、ゲーマーは、その特定のゲームをプレイする他の人々のコミュニティ、そのゲームに対するスコア・ボード、およびそのゲームにおける彼の個人的な成績を見ることができる。ゲームは、ゲーマーに対して、サービスのデータから友達がオンラインにいるか否かを知らせることはできるが、ゲーマーに対して、その友達がサービス上で具体的に何をしているか、または彼がいつ参加できるかを知らせることはできない。
【０００４】
第２に、サービス・コミュニティにおいては、このサービスは、ゲーマーのプレイヤーとしての履歴、彼がプレイしたことのある全てのゲーム、彼がオンラインで費やした時間の量、彼の友達リストのサイズ、友達がプレイしたことがあるかまたは現在プレイしている全てのゲーム、送ったり受け取ったりした友達の招待状、送ったり受け取ったりしたメッセージ、およびそのゲーマーが送ったり受け取ったりした全てのフィードバックを知る。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
システムは、これらオンライン・コミュニティが、様々なプレイヤーをマッチさせて、彼らがマルチ・プレイヤー・ゲームをプレイすることができるように、し向けることを試みてきた。しかしながら、一般的には、このようなシステムは、典型的には単一のゲームまたは小さな一ファミリーのゲーム内のスキルまたは経験を重視し、このため、様々な個人的な動機（personal considerations）に基づいた、共有された対話を楽しみそうな一群のプレイヤーが、ゲーム・コンテクストの外部でグループを形成し、その後、マルチ・プレイヤー・ゲームに集団で参加することを可能にしない。
【０００６】
一般に、コンソール・ベースのマッチメーキング（matchmaking）およびコンペティション・システム（competitions systems；競技会システム）は、各々の個別のゲーム開発チームの創造力およびリソースによって制約されてきた。各チームは、自身のマッチおよびコンペティションのインターフェースを作成しなければならない。ゲーマーにとっては、このことは、彼または彼女はマッチメーキングまたはコンペティションのＵＩを、毎回学び直さなければならないことを意味する。各々のゲームは、それ自身のマッチメーキングおよびコンペティションのシステムを作成するために、ゲーマーは、マッチおよびコンペティションのオプションをサービスの全体に渡って調べる（view）手段は有していなかった。ゲーマーは、プレイヤーの最大のコミュニティがどこに存在するか、または誰が最も多くのコンペティションをホストしているかについてほとんど知ることができなかった。
【０００７】
更に、マッチング・インターフェースは、典型的には、個々のゲームのコードの一部であったため、ゲーマーは、１つのゲーム内において他のプレイヤーとのマッチを作成し、その後、それらプレイヤーのグループと一緒に別のゲームへとローミングする能力は有さなかった。
【０００８】
幾つかのゲームが、コンソール・コンペティションのステータスを作成し、管理し、ビューイングするためにウェブを使用してきたが、その体験は、ゲーマーおよびゲーム開発者がこれらを機能させる一連の複雑なステップに関連していた。更に、このウェブによるコンペティション管理システムは、従来は、開発された特定のゲームのファミリーに密接に結び付けられていたため、タイトル（前述の幾つかのゲーム）のファミリー以外のゲームは、このウェブ・システムを有効に活用することはできなかった。
【課題を解決するための手段】
【０００９】
本発明は、マルチ・プレイヤー・コンピュータ・ベースのゲームをプレイするためのシステムおよび方法を備える。
【００１０】
これらのシステムおよび方法は、複数の異なるゲームから構成設定（configuration settings）を受け取る。これら構成設定は、ゲームのパラメータに関する情報をサービスが、そのゲームで許可されたパラメータに従って複数のプレイヤーをマッチングする能力を有するように、または、このサービスがプレイヤーにこれらパラメータに従ってパーティ・セッションを作成させ、その後、そのセッションに他のプレイを勧める能力を有するように、提供することが可能になる。
【００１１】
複数のプレイヤーに関する情報と、コンピューティング・デバイス上で動作する複数の個々のゲームに関する情報とを有するデータベースを有するサービスが提供される。このサービスに結合されるものは、前記複数の異なるゲームのうちの１つの選択と、前記ゲームに対する構成設定間の前記プレイヤーが行った特定の選択と、をプレイヤーから受け取るための入力デバイスである。このサービスは、そのゲームとは別個に機能することができ、異なるゲーム開発者からの複数の異なるゲームの任意の１つをプレイヤーが選択することを可能にする。このサービスには、更に、開始メッセージを、前記複数のプレイヤーおよび前記複数の異なるゲームの１つに応じて選択される複数のコンピューティング・デバイスに出力するための出力デバイスが結合される。この開始メッセージは、これらコンピューティング・デバイスの全てがそのゲームを同一のやり方によって開始することができるように前記構成設定を示す情報を含む。このシステムは、更に、ゲームとコンソールとの間にプレイヤーのグルーピングを記述する一意の識別子を維持するため、パーティおよびセッション管理アプリケーション・インタフェース（ＡＰＩ）を含む。このサービスには、更に、ゲームからゲーム終了メッセージを受け取るための入力デバイスが結合される。このメッセージは、異なるゲームをプレイすることを選択するためにコンソールに戻ったプレイヤーのパーティに関する情報を含む。
【００１２】
データベース内のこれら複数のプレイヤーに関する情報は、前記プレイヤーのゲーム・プレイのスキルおよび社会的な属性を示す情報を含む。これらシステムおよび方法は、前記プレイヤーのゲーム・プレイのスキルおよび社会的な属性に応じてプレイヤーのサブセットをマッチングする能力を有する。
【００１３】
加えて、これらシステムおよび方法は、構造化されたコンペティション用に拡張することもできる。このようなケースにおいては、コンペティションの各ラウンドの後に、これらシステムおよび方法は、そのコンペティションに残っているプレイヤーに応じて、複数のプレイヤーに複数の開始メッセージを提供する。
【発明を実施するための最良の形態】
【００１４】
本発明の上述の「課題を解決するための手段」並びに以下の詳細な説明は、添付の図面とともに読むことでより良く理解できる。本発明を図示する目的で、これら図面中には本発明の一例としての構成が示されているが、しかしながら、本発明はここに開示される特定の方法および手段（instrumentalities）に限定されるものではない。
【００１５】
図１は、本発明の態様を図示するのに役立つ一例としてのコンピュータ・ネットワークの略図である。ここでコンピュータ１００ａ−１００ｅは、ゲームおよび他プリケーションなど様々なコンピューティング・オブジェクトのうちのいくつかをホストする。この物理的環境は、複数のコンピュータとして接続されたデバイスを示しているが、この図は単に例示であり、様々なデジタル・デバイス、例えば、ＰＤＡ、ゲーム・コンソールその他を含むことができる。更に、通信ネットワーク１６０は、これ自体が複数のコンピュータ、サーバおよびルータその他ネットワーク・デバイスを含むことができる。
【００１６】
分散コンピューティング環境をサポートする多様なシステム、コンポーネント、およびネットワーク構成が存在する。例えば、コンピューティング・システムは、有線もしくは無線システムによって、ローカル・ネットワークまたは広域分散ネットワークによって、互いに接続することができる。今日、これらネットワークの多くは、広域分散コンピューティング用のインフラストラクチャを提供し、多くの異なるネットワークを包含するインターネットに接続されている。本発明の幾つかの態様は、コンピュータ読み取り可能命令、コード・フラグメント（code fragments）、アプリケーションなどを様々な分散されたコンピューティング・デバイスに分散するために用いることもできる。
【００１７】
このネットワーク・インフラストラクチャは、クライアント／サーバ、ピア・ツウ・ピアまたはハイブリッド・アーキテクチャなどの多数のネットワーク・トポロジのホストを可能とする。「クライアント」は、自身が関係していない別のクラスまたはグループのサービスを使用するクラスまたはグループのメンバーである。したがって、コンピューティングにおいては、クライアントは、別のプログラムによって提供されるサービスを要求するプロセス（つまり、大ざっぱには、１セットの命令またはタスク）である。クライアント・プロセスは、要求したサービスを、その他のプログラムまたはサービスそれ自体についていかなる動作に関する詳細をも「知る（know）」必要に迫られることなく、利用する。クライアント／サーバ・アーキテクチャ、とりわけネットワーク化されたシステムにおいては、クライアントは、通常は、別のコンピュータ（つまり、サーバ）によって提供される共有ネットワーク・リソースにアクセスするコンピュータである。サーバは、典型的にはインターネットなど遠隔ネットワークを介してアクセスすることができる遠隔コンピュータである。クライアント・プロセスは第１のコンピュータ・システム内でアクティブであることができ、サーバ・プロセスは第２のコンピュータ・システム内でアクティブであることができ、互いに通信媒体を介して通信し、こうすることで分散化された機能性（functionality）を提供し、複数のクライアントが、サーバの情報収集能力を利用することを可能にする。
【００１８】
クライアントとサーバは、互いにプロトコル層によって提供される機能性を利用して通信する。例えば、Ｈｙｐｅｒｔｅｘｔ−Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ（ＨＴＴＰ）は、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ（ＷＷＷ）もしくは単に「ウェブ（Ｗｅｂ）」と連携して使用される一般的なプロトコルである。典型的には、コンピュータ・ネットワーク・アドレス、例えば、Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ（ＵＲＬ）またはインターネット・プロトコル（ＩＰ）アドレスは、サーバまたはクライアント・コンピュータを互いに識別するために用いられる。コンピューティング・デバイス間の通信は通信媒体を通じて提供される。とりわけ、クライアントとサーバは、高い通信能力が得られるようにＴＣＰ／ＩＰ接続を介して互いに結合されることができる。
【００１９】
一般に、このコンピュータ・ネットワークは、ネットワーク環境内に展開されたサーバ・デバイスおよびクライアント・デバイスの両方を備える（ピア・ツウ・ピア環境においては、複数のデバイスは、クライアントおよびサーバの両方とすることができる）。通信ネットワーク１６０は、ＬＡＮ、ＷＡＮ、イントラネット、またはインターネット、あるいは複数のコンピューティング・デバイス１０ａ−１０ｅ間の通信を可能にするこれらの任意の組合せとすることができる。更に、通信ネットワーク１６０は、無線、有線、または無線接続と有線接続との組合せとすることができる。加えて、このコンピュータ・ネットワークは、分散コンピューティング環境を備えることができる。このような環境においては、コンピューティング・タスクを、コンピュータ・ネットワーク内でアドレス可能な要素で複数のコンピューティング・デバイスに渡って分散させることもできる。
【００２０】
本発明の１つの態様によると、通信ネットワーク１６０は、複数のコンピュータ１００ａ−１００ｅからアクセスすることができるサービス１５０をホストする。サービス１５０は、そのサービスの全てのユーザにコンピューティング・サービスを提供するために、コンピュータ１００ａ−１００ｅのユーザの情報を収集し、これらユーザを追跡する。
【００２１】
図２は、図１のネットワーク内のコンピュータ１００ａ−１００ｅとして使用することもできるマルチメディア／ゲーム・コンソール１００の機能性コンポーネントを示す。マルチメディア・コンソール１００は、中央処理装置（ＣＰＵ）１０１を含み、このＣＰＵ１０１は、レベル１のキャッシュ１０２、レベル２のキャッシュ１０４、およびフラッシュＲＯＭ（読み出し専用メモリ）１０６を有する。レベル１のキャッシュ１０２およびレベル２のキャッシュ１０４は、データを一時的に格納し、こうしてメモリ・アクセス・サイクルの数を低減し、処理速度およびスループットを向上させる。複数のコアを有するＣＰＵ１０１を提供して、追加のレベル１のキャッシュ１０２およびレベル２のキャッシュ１０４を提供することもできる。フラッシュＲＯＭ１０６は、マルチメディア・コンソール１００の電源がＯＮになったとき、ブート・プロセスの初期の段階においてロードされる実行可能コードを格納する。
【００２２】
グラフィック処理装置（ＧＰＵ）１０８とビデオ・エンコーダ／ビデオ・コーデック（符号器／復号器）１１４は、高速高解像度グラフィック処理のためのビデオ処理パイプラインを形成する。データはグラフィック処理装置１０８からビデオ・エンコーダ／ビデオ・コーデック１１４へとバスを介して運ばれる。ビデオ処理パイプラインは、データをテレビまたは他のディスプレイへと伝送するために、Ａ／Ｖ（オーディオ／ビデオ）ポート１４０へと出力する。ＧＰＵ１０８には、プロセッサが様々なタイプのメモリ１１２、例えば、これに限定されるものではないが、ＲＡＭ（ランダム・アクセス・メモリ）にアクセスできるようにメモリ・コントローラ１１０が接続される。
【００２３】
マルチメディア・コンソール１００は、Ｉ／Ｏコントローラ１２０、システム管理コントローラ１２２、オーディオ処理装置１２３、ネットワーク・インタフェース・コントローラ１２４、第１のＵＳＢホスト・コントローラ１２６、第２のＵＳＢホスト・コントローラ１２８、およびフロント・パネルＩ／Ｏサブ・アセンブリ１３０を含み、これらは好ましくはモジュール１１８上に実装される。ＵＳＢコントローラ１２６、１２８は、周辺コントローラ１４２（１）−１４２（２）、無線アダプタ１４８、および外部メモリ・デバイス１４６（例えば、フラッシュ・メモリ、外部ＣＤ／ＤＶＤ  ＲＯＭドライブ、取り外し可能な媒体等）に対するホストとして機能する。ネットワーク・インタフェース１２４および／または無線アダプタ１４８は、ネットワーク（例えば、インターネット、ホーム・ネットワーク等）へのアクセスを提供し、イーサネット（登録商標）・カード、モデム、Ｂｌｕｅｔｏｏｔｈモジュール、ケーブル・モデム、その他類似物を含む多様な様々な有線または無線アダプタ・コンポーネントのいずれかとすることができる。
【００２４】
システム・メモリ１４３が、ブート・プロセスの際にロードされるアプリケーション・データを格納するために提供される。メディア・ドライブ１４４が提供されるが、これはＤＶＤ／ＣＤドライブ、ハード・ドライブ、または他の取り外し可能なメディア・ドライブ等から構成することができる。メディア・ドライブ１４４は、メディア・コンソール１００に対して内部にあっても外部にあっても良い。アプリケーション・データは、メディア・ドライブ１４４を介してアクセスされ、メディア・コンソール１００によって実行、プレイバックなどが行われる。メディア・ドライブ１４４は、Ｉ／Ｏコントローラ１２０に、バス、例えばシリアルＡＴＡバス、または他の高速接続（例えば、ＩＥＥＥ１３９４）を介して、接続されている。
【００２５】
システム管理コントローラ１２２は、マルチメディア・コンソール１００のアベイラビリティ（可用性）の確保と関連する様々なサービス機能を提供する。オーディオ処理装置１２３およびオーディオ・コーデック１３２は、高忠実度およびステレオ処理能力を有する対応するオーディオ処理パイプラインを形成する。オーディオ・データがオーディオ処理装置１２３とオーディオ・コーデック１３２との間で通信リンクを介して運ばれる。このオーディオ処理パイプラインは、データを、オーディオ能力を有する外部オーディオ・プレイヤーまたはデバイスによる再生のためにＡ／Ｖポート１４０に出力する。
【００２６】
フロントパネルＩ／Ｏサブアセンブリ１３０は、マルチメディア・コンソール１００の外側面上に露出されている電源ボタン１５０および取り出しボタン１５２並びに任意のＬＥＤ（発光ダイオード）または他のインジケータの機能性をサポートする。システム電源モジュール１３６は、マルチメディア・コンソール１００のこれらコンポーネントに電力を供給する。ファン１３８は、マルチメディア・コンソール１００内の回路を冷却する。
【００２７】
マルチメディア・コンソール１００内のＣＰＵ１０１、ＧＰＵ１１０および様々な他のコンポーネントは、シリアルおよびパラレル・バス、メモリ・バス、周辺バス、および様々なバス・アーキテクチャのいずれかを使用するプロセッサ・バスまたはローカル・バスを含む１つまたは複数のバスを介して相互接続される。一例として、このようなアーキテクチャには、ＰＣＩ（Peripheral Component Interconnects）バス、ＰＣＩ−Ｅｘｐｒｅｓｓバス等が含まれる。
【００２８】
マルチメディア・コンソール１００の電源がＯＮになると、アプリケーション・データがシステム・メモリ１４３からメモリ１１２および／またはキャッシュ１０２、１０４内にロードされ、ＣＰＵ１０１上で実行される。このアプリケーションは、このマルチメディア・コンソール１００上で利用可能なさまざまな異なるメディア・タイプにナビゲートするとき、一貫性のあるユーザ体験を提供するグラフィカル・ユーザ・インタフェースを提示する。動作においては、メディア・ドライブ１４４内に含まれるアプリケーションおよび／または他のメディアは、メディア・ドライブ１４４から起動またはプレイされ、マルチメディア・コンソール１００に追加の機能性を提供する。
【００２９】
マルチメディア・コンソール１００は、システムを単純にテレビまたは他のディスプレイに接続することでスタンドアローン・システムとして動作させることもできる。このスタンドアローン・モードにおいては、マルチメディア・コンソール１００は、１人または複数のユーザがシステムと対話（interact）すること、映画を見ること、または音楽を聴くことを可能にする。しかしながら、ネットワーク・インタフェース１２４または無線アダプタ１４８を介して利用可能となるブロードバンド接続性との統合により、このマルチメディア・コンソール１００は、更に、図１に示されるようなより大きなネットワーク・コミュニティ内の１参加者として動作することもできる。
【００３０】
本発明の１つの態様によると、コンソール１００上でゲームが実行されると、コンソール１００は、通信ネットワーク１６０上で動作しているサービスに情報を提供する。このサービスは、このサービスに接続されている全てのユーザに対する情報を追跡し、豊かなユーザ体験を提供する。このサービスは、ゲーム、コンソール、コンピューティング・デバイス等の全体に渡ってこのユーザ情報を追跡する。このサービスは、このサービスの全てのユーザに対する情報を追跡することで、全てのユーザに対する統計データを集計すること、ゲーム・プレイ能力を測定すること、友達に関する情報（例えば、彼らがどのようなゲームを今プレイしているのか、彼らがどの程度のスキル・レベルに達したかなど）を提供することでより豊かなユーザ体験を提供すること、ユーザの成績（achievements）を追跡すること、および大きなユーザ・コミュニティを通じて集計されたゲームに関する統計データをおおむね測定すること、が可能となる。
【００３１】
複数のゲームに渡って一貫したデータ・セットを提供するために、このシステムにおいては、スキーマ化（体系化）された構成駆動型のプロセスが採用され、ここでは、各ゲームは、特定のゲームに対するゲーム・データを定義する（このサービスによって定義されるスキーマに従う）１つの構成ファイルを生成する。ゲーム構成プロセスを通じて、ゲームは、そのゲームが各ゲーム・プレイヤーに関して生成するデータを記述する。構成プロセスを使用することで、サービスは、ゲームからデータが流れてきた際にそのデータを理解することが可能となり、そのデータを、サービスが理解する他のデータに意味のあるやり方によって統合して、サービスの個々のユーザについての豊かなプロフィールを生成することが可能となる。このユーザ・プロフィールは、ユーザがどこでこのサービス上に入っても、すなわち、ゲームに入っても、ロケーションとは無関係に、ユーザについてまわる。
【００３２】
各ユーザ（ここでは別称としてプレイヤーまたはゲーマーとも呼ばれる）に対して、このサービスは、複数の断片データ（pieces of data）（プロフィール・データと呼ばれる）を、個々のゲーム・セッションにおいて、更には、ゲーム・セッションが終了した後においてさえも、収集してユーザ・プロフィールを構築する。一般に、このプロフィール内に入れるサービス体験の断片（pieces）は、以下を含む。  
１．ユーザが彼または彼女自身に関して述べる事柄（アカウントの設定、および好ましいとされる社会的なゲーム・プレイ「ゾーン」を含む手の込んだ（elaborate）パーソナル・プロフィールの説明（construction）を含む）。  
２．そのユーザに関して他人が述べること（フィードバック・スコアおよび世間的に目立つ評判）。  
３．ゲームがユーザに関して示すこと（ゲーム構成およびゲーム・プレイの結果から得られる、とりわけプレイヤーのスキルを計算するためデータの集大成）。  
４．システムがユーザに関して示すこと（オンライン時間、プレイしたゲームの集合、友達リスト、コンソールのビヘイビア等）。
【００３３】
このシステムは、ユーザ・プロフィールを生成し、これは、ゲーマーのソーシャル・コミュニティを形成し、プレイヤー間の関係を育てることを目的とするサービスおよびアプリケーションに対する構築ブロックとしての役目を果たす。このユーザ・プロフィールは、特定のユーザ（例えば、そのゲーム・プレイヤーのデジタル識別）に関する情報の全体（例えば、メタデータ）である。このユーザ・プロフィールは、コミュニティにおいて意味あるやり方でこの情報を収集し、公表する１組のサービスによって作り上げられる。このユーザ・プロフィールは、更に、ユーザがカスタマイズすることができ、ユーザのゲーム体験を充実させる、などのパーソナル化を提供する。後に詳細に述べられるように、このユーザ・プロフィールは、さまざまな要素から構成され、限定されないが、ゲーマーカード（Gamercard）、ゲーム成績（game achievements）、およびゲーマーの好みを含む。
【００３４】
図３を参照すると、ユーザ・プロフィールの対話、およびここで後により詳細に説明されるゲーム・セッション・サービスとのユーザ対話を実装するのに用いることができる典型的なアーキテクチャの概観が図示されている。コンソール１００は、ボイス／チャット、友達リスト、マッチメーキング（matchmaking）、コンテンツのダウンロード、ローミング（roaming）、フィードバック、トーナメント、音声メッセージング、およびゲーマーに関する更新などのサービス１５８を提供する遠隔サービス１５０と対話する。遠隔サービス１５０は、更に、プロフィール・データベース１６２内のユーザ・プロフィールと、サービス１５８およびゲーム１５４によって使用され構成データ１６４とを維持する。サービス１５０は、ユーザ・プロフィールを収集し、他のサービス１５８によって供給される情報を集計および処理し、そして、ユーザ・プロフィールに関連するサービスを取り出すためのリアルタイムのクライアント要求に答える。データベース１６２内のユーザ・プロフィールは、また、ゲーム１５４によって、とりわけ、パーソナル化およびカスタム化などを可能にするために用いられる。
【００３５】
コンソール１００を使用すると、ユーザは、ガイド１５６と対話することができる。このガイド１５６は、ユーザが、サービス１５８によって提供されるさまざまなオンライン領域およびオプションにナビゲートし、入ることができるインターフェースを提供する。サービス１５０によって格納される構成データ１６４は、ガイド１５６によって提供される機能（features）およびオプションを決定するために用いられる。ゲーム１５４が実行されると、定義された１組のＡＰＩ（ＳｅｔＣｏｎｔｅｘｔ、ＳｅｔＰｒｏｐｅｒｔｙ、ＳｅｔＡｃｈｉｅｖｅｍｅｎｔおよびプレイヤーに関するデータを書き込むためのＳｅｓｓｉｏｎ  ＡＰＩと、統計データ、成績および他のユーザ・プロフィール・データを調べるための複数の専用化された読み出しＡＰＩとを含む）が、サービス１５８を呼び出し、これと対話するために用いられる。これらＡＰＩを介してユーザ・プロフィール情報を要求するときには、ゲーム１５４は、ユーザの一意の識別子を送ることができる。サービス１５０は、ゲーマーカード（後で説明される）、ゲーム統計データ、ゲーム成績、アフィリエーション（affiliations）、ゲーム設定、等を戻す。この典型的なアーキテクチャのさまざまな特徴の追加の詳細について後述する。
【００３６】
サービス１５８は、多様なゲームにおける統計データ、例えば、キルの数（number of kills）、最高ラップタイム、および（マッチメーキングに必要なスキル値を計算するために）重要な、勝ち／負け、などを追跡しおよび表示することを支援する。ユーザがプレイするさまざまなゲームによって全ての統計データが提供され、プレイヤーのユーザ・プロフィール内への算入のために、サービスに提供される。例えば、本人のシューターのタイトル（title：資格）は、「キル」特性を定義して、「マップ」というコンテクストそれぞれに対して独立的に（例えば、ブラッド・クリークで５キル、バトル・レンジで１０キルのように）追跡記録されることが望ましい。この情報は以下のように表示される。
【００３７】
【表１】
2008546469.tif 000003
【００３８】
各ゲームは、そのゲームのキャラクタ（特徴）に適合し、サービス１５８の各ユーザに対して追跡することができる情報についての最小限のセットをサポートすべきである。
【００３９】
ユーザ・プロフィール１６６の所有者は、彼／彼女のユーザ・プロフィールを直接に編集することができ、更に、誰がユーザ・プロフィールの各セクションを閲覧することができるかを管理することができる。ユーザ・プロフィール１６６は、一般フィールド（例えば、タイル（tile）、国、言語、性別、挨拶の言葉、等）および／またはシステム設定（例えば、音声出力、コントローラのバイブレーション、キャラクタ名、ゲーム・フォーマット、ゲーム・モード等）を介して、編集することができる。ユーザ・プロフィール１６６に対するプライバシー／忌避設定（Privacy/Opt-out Settings）は、例えば、プレゼンス情報は友達のみに限定し、ゲーム成績は全ての人に可視可能に、などに調節することもできる。
【００４０】
ユーザ・プロフィールは「友達」として知られる他のプレイヤーのリストに関連付けられる。友達は、そのプレイヤーが友達リスト上に掲載されるように招待した（且つ、その招待を承諾した）他のゲーマーである。
【００４１】
ユーザ・プロフィールは「最近のプレイヤー」として知られるプレイヤーのリストにも関連付けられる。この最近のプレイヤーは、そのユーザ・プロフィールの所有者がプレイしたことがある全てのゲームに渡って一緒にプレイした、最近のＮ人のプレイヤーのリストである。
【００４２】
ユーザ・プロフィール１６６は、他のプレイヤー１７０によって提供されるフィードバックを含むことができる。フィードバックは、他の人が特定のゲーマーに関して知ることを助ける。例えば、もしそのゲーマーがゲーム・セッションの最中に、反則言語（foul language）を口にしたときや、攻撃的なプレイを行った場合には、他のゲーマーはフィードバックをサービス１５０に送ることができる。このフィードバック機構は、ユーザ体験を、評判を組み入れることによって向上させる。プレイヤーは、したがって、名前は匿名であるが、累積されるフィードバックのために未知の人（unknown）ではない。
【００４３】
このシステムのもう１つの態様においては、遠隔サービス１５０およびゲーム１５４は、ユーザのオンラインおよびオフラインでのアクティビティを追跡し、ゲーマー・プロフィール１６６内に使用統計データを提供する。ゲーマーがオンラインでプレイすると、特定のゲーム・タイトルがプレイしたゲームのリストに付加され、このリストは、他のプレイヤーに対して見えるようにされる。オフラインでは、ゲーム・コンソール１００およびゲーム１５４は、ゲームをインストルメント化するための機構を介してユーザのアクティビティ（行動）を追跡し、特定のプレイヤーのゲームにおける統計データおよび成績に関する詳細な情報を収集する。ゲーマー・プロフィール１６６は、サービス１５０に次に接続された際に、このオフライン・プレイを反映するために更新される。ゲーム成績は、このユーザ・プロフィール・データ・メカニズムを介してゲーム１５４によってサービス１５０に報告することもできる。
【００４４】
図５から図８を参照すると、ゲーマー・プロフィールを、幾つかのやり方および形式で見ることができるが、通常、ゲーマーカード７２内に表示される。ゲーマーカード１７２は、コンソール１００上のゲームおよび、例えばウェブ上のゲームによって利用できるゲーマー・プロフィール１６６の視覚的表現である。ゲーマーカード７２は、プレイヤーのゲーマー・プロフィール１６６の要約またはスナップ・ショットとしての役目を果たす。ゲーマーは、ゲーマーカードを用いてマッチメーキング・リストを設定し、そこには、将来に再びプレイするのに好ましいプレイヤーのリストに、何人かのゲーマーが追加される。
【００４５】
図５に示されるように、ゲーマーカード７２は、２つの領域、すなわち、ベース領域１７４と、コンテクストに特定な（または拡張された）領域１７６とに分割される。ベース領域１７４は、１組のゲーマー・プロフィール情報を複数のコンテクストに渡って標準的かつ一貫的なやり方によって提供し、他方、拡張領域１７６は、特定のコンテクストに合うようにカスタム化することができる。図５から図８のゲーマーカード１７２はガイド１５６のコンテクスト内で示されているが、ゲーマーカード１７２はスクリーンの残りの部分から視覚的に分離され、これが表示されるスクリーンの背景色を採用することもできる。
【００４６】
ベース領域１７４は、各々のコンテクスト内においては一貫したビューであるが、異なるコンテクストに対応して異なる変形で提供することもできる。例えば、オンラインセッション中に、１人のプレイヤーが別のプレイヤーのゲーマーカード１７２を見ているときには、オンライン・ゲーマーカード１７２が示される。このオンライン・ベース領域１７４は、例えば、そのプレイヤーのゲーマータグ（Gamertag）、ゲーマー・タイル（gamer tile）、全体としてのコミュニティ評価、ゲーマー・クレジット（Cred）（ポイント・ベースの報酬ポイント・システム）、ゲーマー・ゾーン、国、メンバーシップ層、報酬等の詳細を含む。プレイヤーが彼／彼女自身のゲーマーカード７２を見ている際には、オフライン・ゲーマーカード１７２が示される。このオフライン・ベース領域１７４は、オンライン・ベース領域のサブセットを含み、これは、更に、プレイしたタイトルおよびプレイした時間に関する情報を含んでも良い。ゲーマーカード７２のベース領域１７４は、好ましくは、サイズは固定され、一貫した統計レイアウトを有するとともに、タイルまたはゲーマー・クレジットなどの全ての情報要素は固定した配置を有する。
【００４７】
拡張領域１７６は、セットのゲーマー・カード・アクション、例えば、「プロフィールを閲覧する」、「友達に招待状を送る」および「フィードバックを送る」などを含む。このゲーマーカードの拡張領域は、好ましくは、サイズはコンテクストによって変化するという理由で、決定されない。図５から図７に示されるように、ユーザはガイド１５６および友達リスト１７８を介して他のユーザのリストをスクロールすることができる。ユーザが彼／彼女の友達の間をスクロールすると他のユーザに対するゲーマーカード表示される、またはユーザにはゲーマー・プロフィールのフルビューを見るオプションが与えられる。このフルビュー・モードは拡張された領域１７６についての複数の異なるビューから構成され、例えば、プロフィールの要約、コミュニティ・フィードバック、ゲーム成績、アクティビティおよびソーシャル・ネットワークなど複数のセクションを含む。ガイド１５６は、友達のリスト、最近のプレイヤー（および各プレイヤーに対する要約セクション）、さまざまなオプションおよび設定をナビゲートするためのユーザ・ホームページなどを通って進むことができる。
【００４８】
プロフィールの要約は、プレイしたゲームの数、プレイした時間、タイル、挨拶の言葉などに関する情報を含む。コミュニティ・フィードバックはスタイル、スポーツ・マンシップ、言葉使い（language）、協調性（cooperation）などに関する評価を含む。ゲーム成績（game achievements）のセクションは、最近のタイトル、体験ポイント（ゲーマー・クレジット）、プレイした時間、ゲームに特定な統計データおよび成績等を含む。アクティビティ・セクションは、獲得したゲーマー・クレジット、プレイしたセッション、プレイした総時間数、このサービス上でアクティブな日数などを含む。ソーシャル・ネットワークは、友達、グループ、肯定的／否定的フィードバックの総数などを含む。
【００４９】
マッチメーキング。  
オンラインの、マルチ・プレイヤー・ゲームの場合、マッチメーキングはゲーム・プレイヤーをセッションに結び付ける。マッチ・メイド・セッション（Match made session）とは、ゲームをプレイする２人またはそれ以上のプレイヤーあるいはゲーマーがそのセッションを止めることを決定するまで、またはそのセッションが（そのゲームによって定義される）終了基準を満たすまで、ゲームをプレイする、２人またはそれ以上のプレイヤーあるいはゲーマーを含むゲーム・プレイの１つのインスタンスである。セッションを作り出した人は、ホストと呼ばれる。幾つかのゲームはホストのいないものもあり、そのゲームは、そのゲームを開始した人にどのような特別な役割も割り当てないことを意味する。このようなゲームの場合には、開始者は、実際には、特定の基準を有するセッションを探していた人であり、そのようなセッションが見つからないときは、ゲームはその人に対してセッションを作成し、そのセッションをそれにマッチする他人に対して宣伝する。マッチメーキングは、最低でも、既に１人のプレイヤーがいるセッションに参加することを伴う。セッションは、スロット（slot；役割）を探している人に対して利用可能な開いたスロットが存在し、かつ、そのゲーム・プレイがまだ開始されていない（そのゲームが「ロビー」状態にある）とき、参加可能であるといわれる。進行中のセッションにおいて参加を募っている幾つかのゲームは、セッションが参加可能であることを、全ての公開されているスロットが満たされるまで宣伝する。ゲーマーは、ゲーム内におけるマッチメーキング、またはゲーム外（out-of-game）のマッチメーキング・システムを選択することで、マッチを作り上げる。マッチメーキングＵＩはゲーマーが彼のセッションの検索に幾つかのフィルタを加えること（例えばマップまたは難易レベルを指定することなど）を可能にしたり、場合によっては、ゲーマーを直接検索クエリに入れたりすることもある。殆どの場合、フィルタが用いられるか、用いられないかを問わず、ゲーマーには、セッションのリストから構成されるセッション検索結果が与えられる。各セッションは、そのセッションに関する最も顕著な情報の短い要約を含むセッション記述子によって定義される。ゲーマーは、その後、セッションを選択し、それに参加する。典型的には、プレイヤーは、次に、ロビーに入り、ゲーム・プレイが開始される前に、他のプレイヤーがそのゲームにマッチするのを待つ。幾つかのケースにおいては、検索結果は示されず、プレイヤーは、彼らの検索基準を最も良く満たすゲームのロビーに、直接、入れられる。
【００５０】
マッチメーキングの一つ、このシステムに含まれているソーシャル・マッチメーキング（Social Matchmaking）は、ユーザ・プロフィール・データおよびアフィリエイト・リスト（Affiliates List）を、マッチ・セッションの社会的ダイナミクスを改善するために活用する。ゲーム・プレイヤーが、このシステム内の、ここでソーシャル・マッチ（Social Match）と呼ばれるセッション内にマッチメークすることを選択したときには、その最初のセッションにおいては、彼が設定した自分自身を記述するプロフィール・データが、呼び水（prime the pump）として使用され、一緒にプレイするための最も親しい仲間の新たなゲーマーを見つける。単にプレイするだけで、そのゲーム・プレイヤーは、（後に説明される）アフィリエイト・リスト上の最近のプレイヤーとなる仲間のゲーマーのグループに関連付けられる。このサービスは、将来のセッションにおいて、好ましくは、見知らぬ人よりも最近のプレイヤーとのプレイを優先させるが、ゲーム・プレイヤーがいったん肯定的なフィードバックを与えると、これら「肯定的なフィードバック」の人々は、システムによって記憶され、更に高い優先を与えられる。時間とともに、ゲーマーが１組のプレイヤーと非常に親しくなると、彼は彼らを友達となるように招待する。これら友達ゲーマーには最も高い優先が与えられる。
【００５１】
このソーシャル・マッチメーキング・システムは、類似する意図を有し、類似するプロフィールを共有する人々を結び付け、これら人々の全員がゲーム・プレイ内およびゲーム・プレイ外において（しかし主としてゲーム・プレイ内において）楽しい時間を過ごすことを保障する。フィードバックおよびプロフィール・データを用いてのマッチメーキングは、人々がオンライン・コミュニティを、マッチが時間とともにますます洗練されていく状態で、拡張しおよびリフレッシュする、ことを容易にする。結局は、このマッチメーキングは、新たな人々と出会い、肯定的な体験の歴史を形成するための安全かつ確実な場所として、人々をこのサービスに結び付けることになる。
【００５２】
ゲーマーカードにおいて公表されるユーザ・プロフィールの態様の幾つかは、ゲーム・プレイヤーをセッションにマッチングするために用いることができる。上位レベルにおいては、本発明の１つの態様によると、ゲーム・プレイヤーがサービス１５０にサインアップする（参加する）と、彼は、彼がその中でプレイすることを好ましいと思うタイプの社会環境を最も良く記述するゲーマー・ゾーンを選択するように求められる。このサービスは、他のプロフィール・データを用いる前に、そのゲーム・プレイヤーを同一のゾーンを選択した他のプレイヤーとマッチングするのにこのゲーマー・ゾーンが使用される。このマッチングは、この同一のゾーンを有するプレイヤーの大多数を含むソーシャル・セッションを検索する単純なデータベース・クエリによって行われる。
【００５３】
時間が経過し、このサービスが各プレイヤーに関する追加のデータを有するようになるにつれて、このマッチ・クエリは、セッションにおける各参加者に対するユーザ・プロフィールの複数の鍵となる特徴（aspects）（このゾーンであるものの、時間が経過するにつれて、フィードバックの評判、統計データを介して計算されるスキル、達成された成績によって定義される彼の経験など）を平均化することで向上させることができる。このシステムは、こうして、マッチを探しているプレイヤーのユーザ・プロフィールと比較することができるセッション「プロフィール」を提供することができる。マッチ・システムは、次に、このセッション・プロフィールに問い合わせして、そのセッションに参加することを希望する個々の人のユーザ・プロフィール内の値と、それを比較することができる。そのユーザ・プロフィールについてのマッチが（同一のゾーンを共有し、更に、評判、スキル、経験に対する数値の各々に対して所定のレンジ内にある）セッション・プロフィール値と十分に近い場合は、ユーザはそのセッションを１つのマッチとして示される。このマッチの比較が所定のレンジ内にない場合は、ユーザのクエリは、次々と他のセッションのセッション・プロフィールと比較され、これが肯定的な結果が得られるまで継続される。ＮＡＴタイプ、他のプレイヤーとの物理的接近性、システム上でプレイした時間、プレイしたゲームなどの全てが、マッチ検索が遂行される最終段階（バックエンド）で組み入れられる。
【００５４】
このソーシャル・マッチメーキング・システムは、ユーザ・プロフィールを備えたクエリに基づくマッチメーキングに加えて、友達、最近のプレイヤー、および最近のプレイヤーに関するフィードバックの追跡との関連で、マッチに対して高い優先を与えられるアフィリエイトのネットワークを構築する。
【００５５】
アフィリエイト・リストは、優先を与えられたプレイヤーに対する人々のリストであり、これには、（１）友達（つまり、プレイヤーが、メッセージおよび状態（state）情報の交換が許される１つの好ましい１つのソーシャル・ネットワークへとそのオレーヤが招待し、およびこの招待を受け入れた人々）、（２）肯定的なフィードバックの人々（つまり、そのプレイヤーがそれらの人について肯定的なフィードバックを送った人々）、および（３）最近のプレイヤー、が含まれる。このソーシャル・マッチメーキング・サービスは、常に、最初に（上述のクエリを遂行する前に）そのサービス上にアフィリエイト・セッションが存在しないか検索する。そのプレイヤーのアフィリエイト・リスト上の誰かが、オンラインにあり、参加可能なセッション内にいるとき、このサービスは、そのアフィリエイト・セッションを報告する（return）。複数のアフィリエイト・セッションが存在するときは、友達を有するセッションは、肯定的なフィードバックの人々を有するセッションや最近のプレイヤーを有するセッションよりも高い優先を与えられる。肯定的なフィードバックの人々は最近のプレイヤーよりも高い優先を与えられる。
【００５６】
上の説明に従って、図６はガイド１５６内の最近のプレイヤーのリストを示す。プレイヤーがある人とオンライン・ゲーム・セッションをプレイしたときに、その人は、そのプレイヤーの最近のプレイヤー・リストに加えられる。最近のプレイヤーをブラウズしているときに表示されるゲーマーカードは、ベース領域と、最近のゲーム、フィードバック、および最近のプレイヤーのプレゼンスに関する情報を提供する拡張領域、とを示す。図７は、全体的な成績など、最近のプレイヤーに関して得られる更なる詳細を表示する。
【００５７】
重要なのは、図８はフィードバック機構を示し、ゲーム・プレイヤーはこれを用いて他のゲーム・プレイヤーに関するフィードバックを提供することができるということである。このフィードバック・オプションは、ゲーマーカードにおいて、それを見ているプレイヤーがその人と以前にプレイしたことがあるときにのみ、利用することができる。このフィードバック情報は、その後、マッチメーキングの結果を向上させるために、つまり、このゲーム・プレイヤーと将来のゲームにおいてプレイしたいと思うか否かを示すために用いられる。ある人に関して肯定的なフィードバックを与えると、その人はそのプレイヤーのアフィリエイト・リスト内において優先順位において上方に移動する。更に、このフィードバックは、そのゲーム・プレイヤーの評判に影響を及ぼし、そのプレイヤーが将来のゲームにおいてそれらの人々とグループを組むことになるプレイヤーのグループを変動させることもある。
【００５８】
フィードバックは、したがって、マッチメーキングの目的に対して、「一方向」友達リストの作成、すなわち、プレイヤーが何度も何度も会う人のリストを構築するための低閾値の機構である。この機構は、マッチメーキング体験が改善されることを除いては、通常は目には見えない。例えば、ゲーム・プレイヤーが、特定の人と再びプレイしたいことを示すと、このシステムは、その他のプレイヤーが招待されたり、あるいは友達リスト上にあるために招待を受け入れることがないように、その情報を一方向友達リスト内で追跡する。
【００５９】
プレイヤーがある人に関して否定的なフィードバックを与えた場合は、その人は「回避（avoid）」リストに移動し、ソーシャル・マッチメーキングの目的に対して、その人を含む将来のセッションは、そのプレイヤーに対しては回避される。
【００６０】
（ユーザ・プロフィール・データとアフィリエイトによるマッチングを使用する）上述のソーシャル・マッチメーキングに加えて、このシステムは、更に、プレイヤーを特定のゲームにおける彼らのスキルにのみ基づいてマッチングするランク別マッチオプションも提供する。このスキルは、ゲーム統計データとして収集され、ユーザ・プロフィール内に格納される。スキル・ベースのマッチは、競争心の強いプレイヤー（competitive players）に好まれる。
【００６１】
ゲーム外マッチメーキング（Out-of-game Matchmaking）。  
これは、（上で定義されたような）セッションを作成するためのマルチ・パーツ・システムであって、マッチ構成ツール内においてゲームを設定すること、およびゲーム外においてゲーマーがセッションを、サービスによって知られているゲーム・パラメータおよびソーシャル属性（ユーザ・プロフィール、アフィリエイト・リスト）に従って探すことを可能にする（たとえば、コンソール・システムのアプリケーションＵＩ内の）、ゲーム外のユーザ・インターフェース（user interface out-of-game）を生成すること、を含む。これは、更に、プレイヤーがゲーマーカードをブラウズし、彼らのアフィリエイト（友達、最近のプレイヤー、および肯定的なフィードバックの人）を招待して、プレイヤーのパーティを結集することを可能にするコンソール・システム・アプリケーションＵＩ（ガイドの一部）も含む。このシステムは、次に、コンソール・システムからゲームに、スキーマ化されたゲーム設定のリストおよび各ゲーマーカードに関連付けられた一意のプレイヤーＩＤを渡す「セッション開始」メッセージを提供する。更に、このシステムは、コンソールおよびゲームが、コンソール・アプリケーション内に集められたプレイヤーのグループピングを、コンソールとゲームとの間でやり取りすることができる一意のＩＤと関連付けることで、管理することを可能にする１組のＡＰＩを含む。最後に、このシステムは、プレイヤーがゲームは終了したが、１つのパーティとして一緒にとどまり、別のゲームへとローミングすることを希望するとき、プレイヤーのリストをコンソール・アプリケーションに渡すことを可能にする「ゲーム終了」メッセージを含む。
【００６２】
マッチ構成ツール。  
これは、ゲーム開発者がゲームのマッチ・メーキング・セッション説明（description）をスキーマに従って入力することを可能にする。このツールを用いて、ゲームは、サービスに、ゲーマーがマルチ・プレイヤー・オンライン・ゲーム・セッションを作成するために通過する必要があるステップを伝える。この定義は、サービスが全ての鍵となるゲームのパーミュテーション（permutations）（マップ名からビークル・タイプ（vehicle types）まで）を理解することを確保し、サービスがゲーム・セッションの開始点を捕えることができるようにする。このマッチ構成ツールは、ゲームが１組のランク別カスタム化設定と、１組のソーシャル・カスタム化設定とを作成することを可能にするノードを含む。これら２つの編集スクリーンは、各スクリーンのトップの「ランク別」対「ソーシャル」ラベルを除いては同一であるべきである。これら編集スクリーンは、ゲーマーがガイド内でカスタム化されたマッチ・クエリ（アラ・オプチマッチ（ala Optimatch））を作成することを可能にするゲーム外のマッチＵＩ（out-of-game match UI）を作成するために用いられる。
【００６３】
各編集スクリーンは、ゲーム開発者が、開発者によって既に生成した中からの、またはこのツール内にあらかじめ定義されている（例えば「プレイヤーの数」は全てのゲームに対して要求されるためにあらかじめ定義されている）コンテクストおよび／または特性の単純なリストを挿入することを可能にする。コンテクストは、ストリングを列挙したリストであり、他方、特性は、数値（整数または浮動小数点値）である。コンテクストの一例は「マップ」であり、その一覧にはそのゲーム内で利用できる全ての可能なマップが含まれる。ゲーム開発者は、更に、新たなコンテクストおよび特性を作成しおよび挿入することもできる。
【００６４】
加えられた各コンテクストおよび特性に対して、ゲーム開発者は更に、ゲーム外のマッチＵＩ内の複数のマルチ選択オプションの隣に現れるテキストを提供するローカル化されたストリング・ラベルを提供しなければならない。デフォルトのローカル化されたストリング・ラベルは、そのコンテクストまたは特性自身に対するストリング・ラベルでなければならない。
【００６５】
ＵＩ内のコンテクスト値に対するデフォルト値は、それらコンテクスト値が作成されたときに選択されたデフォルトに基づく。しかし、特性については、開発者は、値の範囲、（数値特性に関する）ステップ・サイズ、およびデフォルト値を指定しなければならない。
【００６６】
指定されたコンテクスト毎に、ゲームは、各コンテクスト値の設定について、許されるプレイヤーの最小数および最大数を示さなければならない。例えば、「マップ」コンテクストの場合、ゲームは、「Ｗａｔｅｒｌｏｏ」コンテクスト値に関しては、最小で２人のプレイヤー、最大で１６人のプレイヤーがプレイできることを指定することができる。
【００６７】
「ゲーム開始」メッセージ。  
このシステムは、更に、ゲーム外のアプリケーション内で、構成ツール内に定義されるスキーマに従って、セッションを作成したとき、ゲームが受け取る必要がある、ゲーム開始メッセージのフォーマットを提供する。このメッセージは、ゲーム開発者が構成プロセスにおいて示したオプションに基づいてゲーマーが選択した、そのセッションの選択肢（マップ、難易レベル等）を含む。このメッセージで、ゲームは、そのゲーマーをロビー内に入れて、そのセッションに他の人がマッチメーキングを介して参加するのを待つことができる。
【００６８】
ゲーム開始メッセージは、以下の情報を含む。  
・セッション内の全てのゲーマーに対するＰＵＩＤ  
・（標準ゲーム用）ホストＰＵＩＤ  
・ランク別ゲーム／標準ゲームのフラグ  
・一意のパーティＩＤ  
・コンテクスト／特性リストとして送られるゲーム設定（セッションホストまたは代理ホストによってシステム・アプリケーションＵＩ内の「カスタム化」スクリーン内に設定される）
【００６９】
ゲームがゲーム開始メッセージを受信したときは、そのゲームは、全てのプレイヤーをゲーム前ロビー内に受け入れなければならない。このロビー内において、ランク別ゲームの場合は、ゲームはカウントダウンを開始し、それらプレイヤーをゲーム・プレイへと送り込まなければならない。どのゲーマーも、ゲーム設定を調節するオプションは有さない。ソーシャル・ゲームの場合は、ホストは、必要であれば、ゲーム設定を調節することを選択することができ、また、いくつかの細かなゲーム設定を選択すること（例えば、車の色を選択すること）が全てのゲーマーに許される。次に、ホストによってゲームが開始されるか、または、通常、十分なパーティが作成された場合であるとき、ゲームはそのゲームを開始することができる。
【００７０】
ゲーム終了メッセージ。  
ゲームが終了し、ホストが、彼のパーティをゲーム後のロビーからゲーム外のロビー（out-of-game lobby）へと戻すことを選択したときには、そのゲームはゲーム終了メッセージを戻さなければならない。
【００７１】
ゲーム終了メッセージは、以下の情報を含む。  
・そのセッション内の全てのゲーマーに対するＰＵＩＤ（ゲーム開始メッセージからのリストから、そのパーティから脱落（drop out）した、または彼らのコンソールの接続を切断した、メンバーを除くものに等しい）  
・ホストＰＵＩＤ（標準ゲームの場合は、そのゲームがホストの移動を許しており、当初のホストがそのゲームから脱落したときは、ホストが代わることもある）  
・パーティＩＤ  
・ゲーム・タイトルＩＤ  
・最後のゲーム設定（これらは、コンソールのアプリケーションがホストに対してこれらをキャッシュすることができ、ホストがシステム・アプリケーションのＵＩ内でそのゲームを次の機会に選択したとき、これらがあらかじめ設定されるように、送り返される）
【００７２】
セッションおよびパーティＡＰＩ。  
セッションおよびパーティ管理ＡＰＩは、パーティの作成をサポートし、更に、ゲーム・プレイのためにプレイヤーを集める毎に、セッションＩＤについての２つのタイプ（flavors）を作成することで、「再プレイ」シナリオを助けるべきである。第１のセッションＩＤ（以下の例ではＡ）は、ゲームのホストと関連付けられる「メタセッション」（パーティ）の種類である（ホストのいないゲームまたはホスト移動の場合には、このＩＤ  Ａは、ゲーム・コード内ではホストとして識別されているが、プレイヤーにはホストとして明示的には識別されていない、覆面ホストである人に関連付けられる。ゲーマーが、ゲーム外のコンソール・システム（ out-of-game console system）内において、ゲーム前ロビーのパーティに参加すると（または彼らが招待を受理し、そのホストの所に集まると）、彼らはこのパーティＩＤ（Ａ）に参加する。
【００７３】
パーティがゲームへと渡されると、そのセッションが開始され（ＸＳｅｓｓｉｏｎＣｒｅａｔｅ）、新たな第２のセッションＩＤ（Ｂ）が、このグループにそのゲームによって割り当てられ、これが、このゲーム内で今追跡されているセッションが削除される（ＸＳｅｓｓｉｏｎＤｅｌｅｔｅ）まで用いられる。パーティＩＤ（Ａ）はホストおよびパーティに参加した全てのゲーマーに対して存続する。
【００７４】
ゲーム・プレイが開始されると、そのゲーム・プレイ・セッションはＸＳｅｓｓｉｏｎＳｔａｒｔがコールされたとき作成される第３のＩＤ  Ｃを使用して追跡される。このＩＤは、そのラウンドで実際にプレイしている各々のプレイヤーと関連付けられる全ての統計データを追跡するために用いられる。
【００７５】
空いたスロットは有するが、進行中の参加は許されないゲームにおいても、新たなゲーマーは引き続きパーティＩＤ  Ａ（およびそのゲームが許す場合はＢ）に参加することができ、そして（ゲームが進行中であるために）セッションＩＤ  Ｃは閉じられたままである間でさえも、そのコンソール内のゲーム外のマッチ・ロビーＵＩ（out-of-game match lobby UI）内で待つことができる。Ａに参加したこれら新たなゲーマーは、更に、（Ｂと関連付けられる）ゲーム・ロビー内で、他のゲーマーが終了するまで待つことができる。
【００７６】
実際のゲーム・プレイと関連する全てのデータは、ＩＤ（Ｃ）に関連付けられる。進行中のゲームへの参加においては、新たなゲーマーは、第２のＩＤ（Ｂ）と第３のＩＤ（Ｃ）の両方に同時に参加し、その後、ゲーム・プレイに参加することを必要とされる。ホストが許可するときは、その人はパーティＩＤ（Ａ）にも参加することができる。
【００７７】
ゲーム・プレイのラウンドが終了すると（ＸＥｎｄＳｅｓｓｉｏｎ）、ゲーマーは（ランク別でないゲームのみ）再びプレイすることを選択することもできる。もし彼らが再びプレイすることを選択したときは、そのパーティＩＤはそのままにとどまり（こうして彼らが再びプレイすること、彼らを一緒に保つことが可能になる）とともに、更に全体的なゲーム・セッションＩＤ（Ｂ）もそのままに維持されるが、ゲーム・プレイ・セッションＩＤ（Ｃ）はＸＥｎｄＳｅｓｓｉｏｎがコールされると直ちに放棄される。プレイの新たなラウンドが開始されると（XStartSession）、新たなゲーム・プレイ・セッションＩＤ（ＩＤ  Ｄ）がそのパーティに対して生成される。
【００７８】
ゲームは、パーティＩＤおよびそれがゲーム外のマッチによって作成されたゲーム（out-of-game match created game）であることを示す情報を保持しなければならない。ゲーム・プレイの各セッションの終了において（ランク別ゲームの場合は１ラウンドのゲーム・プレイしか許されないためにこれは当てはまらないが、ゲームは、ゲーマーが自身をホストとして指定することができ、他のゲーマーに、ゲーム外のマッチ・ロビー（ out-of-game match lobby）に参加することを促す招待状を自動的に送ることを許される「標準ゲームへの転換」を提供することができる）ゲームは、そのホストに、そのパーティをゲーム外のロビー（out-of-game lobby）に戻すか、または再びプレイする機会を与えなければならない。ホストがそのパーティをゲーム外のロビーに戻すことを選択したときは、ゲームは、コンソールにゲーム終了メッセージを送り、そのゲーム・プレイ・セッションをＸＳｅｓｓｉｏｎＤｅｌｅｔｅＡＰＩによって終了させなければならない。
【００７９】
パーティＩＤ  Ａは、ホストがそのプレイヤーのグループをゲーム外のマッチ・ロビー（out-of-game match lobby）から解散させたとき、または、ホストが移動した場合で、新たなホストがそのゲームを引き受けない場合にのみ、削除される。この流れは以下の通りである：
【００８０】
【表２】
2008546469.tif 000004
【００８１】
【表３】
2008546469.tif 000005
【００８２】
いったん構成プロセスが終了すると、そのゲームがそのコードをインストルメンタル化し、その結果、サービスからゲーム開始メッセージを受け入れ、セッションおよびパーティＡＰＩによるプレイヤーのグループ化を管理し、そのグループがゲームから去ることを希望したときはゲーム終了メッセージをサービスに渡すことができるようになり、このサービスは、コンソール・システムのアプリケーション内にゲーム外マッチメーキング・ユーザ・インタフェース（ＵＩ）（out-of-game matchmaking User Interface）を提供することが可能になる。このＵＩは、３つの主要な部分、すなわち、セッションを見つける部分、セッションを（他の人が検索し、参加することができるように）作成する部分、およびパーティに参加する人々をブラウズ／見つける部分、から構成される。ＵＩは、図１１を参照することでより良く理解できる。最初にステップ１１０２において、プレイヤーは友達および／またはアフィリエイトの基準にマッチする他のプレイヤーとのマッチメーキング・プロセスを終了する。システムは、次に、プレイヤーによって選択されたマッチメーキング基準を満たすプレイヤーの数を示す。ＵＩは、プレイヤーに以下の３つの選択を提供する。選択Ａは、ゲーム・プレイヤーに、他のプレイヤーによって開始されたゲームを見つけ、そのセッションに参加する、能力を提供する。この場合には、ＵＩは、プレイヤーに、ゲームのリストを与え、ステップ１１０４において、プレイヤーがゲーム・スクリーンを選択できるようにする。このスクリーンは、複数のゲーム（例えば、Ｈａｌｏ、ＰＧＲ等）を、各ゲームにおけるゲーマーの数およびアフィリエイト／友達の数とともに示す。そのプレイヤーのアフィリエイト（友達、最近のプレイヤー、および肯定的なフィードバックの人）が現在どこでプレイしているかについてのこの追加の情報は、ゲームを選択する際の助けとなる。特定のゲームが選択された後、セッション選択スクリーン１１０６は、このスクリーンの最上部にセッションの総数をリストし（各フィルタはセッションの数を低減させる）、ゲーマーが以下の３つのオプションの１つに進むことができるようにする。
【００８３】
第１のオプションは、セッションの選択である（各セッションは、そのセッションの人および設定に関する鍵となる属性を含むセッション記述子によってリストされる）。セッションが選択されると、プレイヤーは、ゲーム外のロビー１１１４へと送られる。ここで、プレイヤーは、そのプレイヤーのコンソール１００に、ゲーム・セッションを開始するためのゲーム開始メッセージが送られて来るまでを待つことになる。プレイヤーがこのオプションを選択した場合には、彼は、通常は、ホストのいないゲーム（つまり、どの１人のプレイヤーもその設定を制御することのないゲーム）内へと入れられる。これらのゲーム設定はランダムに選択される。「ホストのいない」ゲームの場合は、一緒になってゲーム外のロビーに戻ることはできない。ゲームが終了した時点で、プレイヤーは同一のゲームを同一の設定によって継続することを選択することもできるし、ゲームがゲーム設定をランダムに回転させることを選択することもできるし、またプレイヤーは立ち去ることもできる。
【００８４】
第２のオプションは、（ゲーマーの評判、スキル、タイプ、例えば、きさく（casual）、頑固（hardcore）などを含む）人物設定にフィルタをかけることである。図１１は、このアクティビティをボックス１１０８内に示す。このステップは、ユーザ・プロフィールを利用するが、プレイヤーが利用可能なセッションの長いリストをフィルタリングするに当たって彼のプロフィールのどの面を強調するかを選択することも可能にする。
【００８５】
ゲーム設定に関するフィルタは、上の構成プロセスにおいて記述されたセッションの定義の複数のオプションのサブセットを提供する。例えば、プレイヤーは、特定のゲームレベルに関して、そのレベルのセッションのみがスクリーンの選択肢に出現するように、フィルタすることを望むこともある。このゲーム設定に関するフィルタは、ボックス１１１０によって示されている。複数のゲーム設定の中には「ホストのいない」対「ホストのいる（パーティ）」ゲームを選択する能力がある。
【００８６】
図９は、ゲーム設定と人物設定の両方を１つの単純なスクリーン内でフィルタすることができる特定のゲームに対するＵＩを示す。
【００８７】
セッション間で選択する場合には、プレイヤーは、各セッションに対するセッション記述子を調べる（view）することができる。このシステム・アプリケーションのＵＩは、ゲーム・モード毎のセッション記述子を示し、これには、そのセッションに対する鍵となるユーザ・プロフィールの平均の要約、主なゲーム設定の要約、およびそのセッションにおけるゲーム・プレイのタイプを識別する「セッション・ラベル」（これはそのゲーム内のプレイヤーの「ゾーン」によって定義される）を収容する。このデータは、彼が参加すべき最も良いセッションを選択することできるように、プレイヤーが、各セッションについて「ひと目見ただけでわかる」ビューを得るのを助ける。セッション記述子内のこのデータには以下が含まれる。  
・ゲーム名  
・ホストの名前  
・ゲーム内のプレイヤーのコミュニティの評判の格付け（rating）  
・ゲームの雰囲気または規則（例えば、成熟した言葉使い、競争性のレベル）  
・ゲーム設定（例えば、プレイされているゲーム、レベルまたはトラックのタイプ）  
・接続速度（つまり、ｐｉｎｇ）  
・ゲーム内のプレイヤーのスキルのレベル  
・ゲーム内にあなたの友達がいるか否か  
・ゲーム内にあなたの友達の友達がいるか否か  
・そのゲームにおいてあなたが以前楽しくプレイすることができた人がいるか否か  
・ゲームにおいて話される言語  
・ゲームがホストされている国
【００８８】
図１０は、プレイヤーがセッションのリストの中から１つの特定のセッションを選択し（黄色のボックスの選択）、そのセッションの記述子の詳細の幾つかを見ているところのＵＩを示す。
【００８９】
プレイヤーが現存のセッションに参加するのではなく、むしろゲーム・セッションを作成したいと思うときは、プレイヤーは示されるように、「Ｘ」を選択し、ステップ１１１２へと移動することで、マッチを作成することを選択することもできる。この場合は、プレイヤーは、プレイヤーがそれに対してセッションを生成したいと思うゲーム・タイトルを選択することを可能にするスクリーンへと進む。この時点で、プレイヤーは、そのゲームを、そのゲームの構成オプションに基づいて定義することができる。例えば、プレイヤーは、プレイのレベル、プレイヤーの数などを選択することができる。プレイヤーが（構成プロセスにおけるゲームによって定義される）そのゲーム・セッションの定義を終えると、そのプレイヤーは、参加者が参加するまで、ゲーム・ロビーに入る。すると、このゲーム・セッションが、（ステップ１１０４および１１０６において示されるように）参加するゲームを探している他のゲーマーのスクリーン上に現れる。このようにして設定されるゲームは、（そのセッションを作成したプレイヤーによってホストされた）「ホストのいる」ゲームであり、ゲームの「パーティ」にもたらされ、そしてこれらゲームが終了したとき、全てのプレイヤーは、同じゲームを続けるか、ホストがそのゲームに対するゲーム設定を変更することを許すか、またはゲーム外のロビーに戻るか、のオプションを有していなければならない。
【００９０】
プライベート・パーティは、そのパーティ内のプレイヤーの集まりを、ゲーム・プレイの特定のセッションに対してプレイヤーを集めることとは別個に、識別することで管理される。
【００９１】
ゲーム・セッションにゲーマーが参加することを待つことに加えて、プレイヤーは積極的に参加者を探し、「パーティの作成（Create a Party）」を選択することで、パーティを構築することもできる。ステップ１１２４に示されているように、友達リスト、最近のプレイヤーのリスト上に関してゲーマーカードをブラウズすることもできるし、また別のやり方として、ある検索基準、例えば、スキル・レベル、場所、および／または評判を有するとか、または、友達またはアフィリエイトでとかの幾つかの検索基準を満たすユーザ・プロフィールを有するゲーマーを探すこともできる。条件を満たす多様なゲーマーを見つけると、プレイヤーは、そのゲーマーに直接にそのパーティ・セッションへの招待を送ることで、彼らをパーティにセッションに参加するように、招待することができる。もしそのプレイヤーがこの招待を受け入れたときは、彼はゲーム外のマッチ・パーティ・ロビー（OOG match Party lobby）に加えられる。代わりに、音声チャネルを開き、これを用いてこれらゲーマーが、例えば、ゲーム・セッションに関して、連絡することもできる。最後に、ゲーマーを探してブラウズしている間に、選択されたゲーマーを、そのプレイヤーのアフィリエイト・リストに追加し、将来のゲームの選択において彼らがアフィリエイトとして留意されるようにすることもできる。
【００９２】
パーティ・ロビー（「パーティ・フローの作成」からアクセスされると、１１１２）は、指定されたホストが、彼のプレイしたことのあるゲームリスト上および現在のそのパーティ・ロビー内にいるプレイヤーによってプレイされたことのある全てのゲームのリスト上で利用可能な全てのゲームの中から選択すること可能にする。このことは、そのホストのリスト上の、そのロビー内の１人または複数のプレイヤーによって利用することができないゲームを呼び出すことになる。そのホストが、１人またはそれ以上のプレイヤーによって利用できないゲームの１つをプレイすることを選択したときは、それらプレイヤーはロビー内で、そのパーティが戻るのを待つこともできるし、立ち去ることもできる。ホストは、全てのプレイヤーを除名したゲームを開始することはできない。
【００９３】
それらプレイヤーがパーティ・ゲーム内のゲーム・プレイを終了したときには、そのゲームは、それらプレイヤーに対して、ゲーム外（ＯＯＧ）でのマッチ・パーティ・ロビーに戻るオプションを与えなければならない。ゲームは、システムに「ゲーム終了」メッセージを送り返さなければならない。このゲーム外のパーティ・ロビー（out-of-game party lobby）は、それらプレイヤーのグループが一緒にとどまり、ホスト・プレイヤーが次にどのゲームを選択するか、およびいったんゲームが選択された場合は、そのゲームに対してどの設定（マップ等）を選択するかについて、互いに連絡することを可能にする。
【００９４】
（セッションの記述で指定されるような）ゲームの制約のために、幾つかのゲームタイプは、そのパーティに利用できないことがある（例えば、もしそのパーティ内に６人が存在する場合、幾つかのゲームタイプは、たった４人のプレイヤーしか許されないという理由から利用できないことがある）。
【００９５】
ゲーム外の完了（Out-of-game Completions）
このシステムのもう１つの態様によると、上述のゲーム外のマッチメーキング（out-of-game matchmaking）を活用することで、システムはゲーム外のコンペティション（out-of- game competitions）を作成することができる。このステップには以下が含まれる、第１に、構成ツールでゲームを設定すること、第２に、構成ツールでコンペティションを設定すること、第３に、ゲーム外でゲーマーがコンペティションを作成することとコンペティションを検索することの両方を可能にする、ゲーム外のＵＩ（UI out-of- game）（ウェブ上およびガイド内の両方において）を生成すること、第４に、ウェブ上またはガイド内でコンペティションが作成された時点で、ゲームに、「セッション開始」メッセージを、そのゲーマーのＩＤ並びに一意のセッション識別子とともに渡すこと、第５に、ゲームが、そのウェブおよび／またはガイドに、「セッション終了」メッセージを、一意のセッション識別子およびそのセッションの結果とともに戻すことができるようにすること。
【００９６】
上述のように、この構成ツールは、ゲーム開発者がそのゲームのマッチ・メーキング・セッション記述子をジャンルに特定な構成データに従って入力することを可能にする。加えて、このツールは、ゲーム開発者が、ジャンルに特定な構成データに従ってそのマッチ・メーキング・セッション記述子と組み合わせるための、コンペティション・コンテクストを選択することを可能にする。上述の構成パラメータに加えて、コンペティションは、少なくとも２つの追加のパラメータ、すなわち、コンペティション定義および一意のセッション識別子を使用する。これら１つまたは複数のコンペティション定義は、ゲーマーがそのセッション定義との組合せで選択することができる適当なコンペティション・コンテクストをゲームがサービスにどのように通信すべきかについて定義する。これら一意のセッション識別子は、その一意のセッションが終了した時点で、ゲームが、受け取り、維持し、ウェブおよび／またはガイドに手渡す一意のセッション識別子のフォーマットを提供する。これら識別子には、コンペティション内における個々のゲーマーの位置、ラウンド、およびウェブ上でまたはガイド内のそのプレイヤーによって作成されたコンペティション構造に基づくマッチアップ（match-up）が含まれる。これは、ゲーム開発者が構成プロセスの際にコンペティション・コンテクストを定義した時点で動作可能になった。
【００９７】
この構成プロセスが終了すると、サービスはウェブ上またはコンソールのガイド内にゲーム外のコンペティションＵＩ（out-of-game competition UI）を提供することができる。図１２は、更に、このコンペティション・フローの動作を示す。最初に、ステップ１２０２において、プレイヤーは、現存するコンペティションを見つけ出すオプション（選択Ｙ）、簡単なコンペティションを作成するオプション（選択Ｘ）、またはカスタム・コンペティションを作成するオプション（選択Ｙ）、を有する。プレイヤーがコンペティションを見つけるオプションを選択したときは、（ステップ１２０４において）ＵＩスクリーンが提供され、これは、プレイヤーが、彼または彼女がそこで競うことを希望するゲーム、例えば、（コンペティション名である）Ｍｅｃｈ  Ａｓｓａｕｌｔ、Ｐｒｏｊｅｃｔ  Ｇｏｔｈａｍ  Ｒａｃｉｎｇ（ＰＲＧ）、その他、を選択することを可能にする。ゲーム選択スクリーンは、有効になったコンペティションとともに利用可能な、例えば、それに対して誰かが既にコンペティションを設定している、ゲームを表示する。このインターフェースからゲームを選択した後に、（ステップ１２０６において）現在開かれている全てのコンペティションのリストが、進行中のコンペティションとともに提示するスクリーンが表示される。更に、そこには、これらコンペティションへの参加者の経験レベルおよびタイプに関する情報が、彼らのゲーマー・プロフィールに基づいて提供される。この時点で、プレイヤーは、コンペティションを選択して参加することを選択することもできるし、コンペティション検索を更に絞り込むこともできる。もしプレイヤーがコンペティション検索を絞り込むことを選択したときは（ステップ１２０８）、プレイヤーは、そのコンペティションのコンテクストおよびそれらコンペティションに参加しているゲーマー、例えば、プレイヤーの評判、場所等に関してフィルタリングすることができる。他方、プレイヤーがコンペティションに参加することを選択したときは、プレイヤーはステップ１２１２へと進み、そのコンペティションを開始する。
【００９８】
現存するコンペティションに参加することを選択するのではなく、プレイヤーは、ステップ１２０４、１２０６および１２０８との関連で上述されたプロセスを介して、新たなコンペティションを作成し、他の人を参加するように招待することもできる。プレイヤーは、ゲーム外のコンペティション（out-of-game competition）を生成するための２つのオプションを有する。第１は、構成プロセスを介してそれ以前にその全体が定義されている、ウェブ上またはガイド内のｃｏｍｐｅｔｉｔｉｏｎ  ｏｕｔ−ｏｆ−ｇａｍｅに手軽に入るやり方である。つまり、ゲーム開発者は、構成データを介してサービスに提供されるゲームに対してあらかじめ提示されたコンペティション設定を提供する。この場合には、プレイヤーはゲームを選択し、その後、そのゲームに対して利用可能なあらかじめ定義されたコンペティションの１つを選択する（ステップ１２１０）。同様にして、プレイヤーは、動作可能となったコンペティションを有するゲームを選択し、そのゲームに対する構成データによって定義されるそのコンペティション用の様々なパラメータ、例えば、ラウンドの数、シングル・エリミネーション等を定義することで、カスタム・コンペティションを作成することもできる（ステップ１２２０）。プレイヤーは、ウェブ上またはガイド内のこれらオプションを選択し、コンペティション構造を作成する。
【００９９】
プレイヤーがコンペティションに入るためにどちらの機構を採用した場合でも、コンペティションに入った後に、サービスはコンペティション構造を維持し、これは、ウェブ接続を通じてサービス上で、またはコンソール上のガイドから直接に、閲覧することができる。このコンペティション構造は、例えば、そのコンペティションのトポロジ、例えば、シングル・エリミネーション・ツリー構造（single elimination tree structure）、多様なコンペティション参加者のマッチアップなどを含む。コンペティション・ホームが設定され、そこでは、これらトポロジおよびマッチアップをウェブ上およびガイド内の両方の上で、全ての参加者によって閲覧することができる（ステップ１２１２）。その後、これらの情報、例えば、ロビーの一意のＩＤ、一意のコンペティションＩＤ、一意のラウンドＩＤおよび一意のマッチＩＤが、ホスト・コンソール１００に送られ、ゲーム・プレイのアービトレーション（調停）が開始される（ステップ１２１４）。その後、各ラウンドが、開始され、終了する。各ラウンドの終了において、各コンソールは、その結果をホストに、そのコンペティションＩＤ、一意のラウンドＩＤおよび一意のマッチＩＤとともに送り返す（ステップ１２１６）。その後、コンペティションの次のラウンドがサービスによって設定され、コンペティションがステップ１２１８において終了するまでこのプロセスが、反復される。
【０１００】
本発明が様々な図面の好ましい実施例との関連で説明されたが、本発明の同一の機能を遂行するために、本発明から逸脱することなく、他の類似する形態を使用することも、または説明された形態に修正あるいは追加を加えることもできることを理解されるべきである。
【図面の簡単な説明】
【０１０１】
【図１】本発明の態様が中において実装される典型的なコンピュータ・ネットワーク環境のブロック図である。
【図２】ネットワークコンピューティング環境、例えば、図１のネットワークコンピューティング環境に組み込むことができる典型的なコンソールを示すブロック図である。
【図３】コンソールと遠隔サービスとの対話を示すブロック図である。
【図４】ユーザ・プロフィールを構築するための情報の収集を示す。
【図５】ユーザ・プロフィール情報を表示するユーザ・インターフェースの典型的な図である。
【図６】ユーザ・プロフィール情報を表示するユーザ・インターフェースのもう１つの典型的な図である。
【図７】ユーザ・プロフィール情報を表示するユーザ・インターフェースのもう１つの典型的な図である。
【図８】ゲーム・プレイヤーがこれにより他のゲーム・プレイヤーにフィードバックを送ることができるフィードバック機構を示す。
【図９】プレイヤーがこれによりマッチ・メーキング・セッションに対して選択肢をフィルタリングし、その後、セッションのリストの内からそれらの記述子に従って選択することができるユーザ・インターフェースを示す。
【図１０】これも、プレイヤーがマッチ・メーキング・セッションに対して選択肢をフィルタリングし、その後、セッションのリストの内からそれらの記述子に従って選択することができるユーザ・インターフェースを示す
【図１１】マッチ・メーキング・セッションの設定におけるユーザ・インターフェースを示すフローチャートである。
【図１２】コンペティション設定プロセスのフローチャートである。
【図１】
2008546469.tif 000006
【図２】
2008546469.tif 000007
【図３】
2008546469.tif 000008
【図４】
2008546469.tif 000009
【図５】
2008546469.tif 000010
【図６】
2008546469.tif 000011
【図７】
2008546469.tif 000012
【図８】
2008546469.tif 000013
【図９】
2008546469.tif 000014
【図１０】
2008546469.tif 000015
【図１１】
2008546469.tif 000016
【図１２】
2008546469.tif 000017
【国際調査報告】
2008546469.tif 000018