概要
従来は、ゲームを複数のストアフロントやプラットフォームで公開するとプレイヤー ベースがディストリビューション プラットフォーム間で分割されていました。Epic Account Services を利用すると、強力なソーシャル クロスプレイ機能を備え、ゲームのマッチメイキング プールを統合できる、より大規模なエコシステムにゲームからアクセスできます。
Epic Online Services SDK を使用することですぐに統合を実現することができ、サポートされるプラットフォームすべてのプレイヤーをつなぐための複雑で細かな処理にも対応できます。つまり、クロスプレイがサポートするあらゆるプラットフォームで、1 つ以上の Epic Online Services (EOS) のサービスをゲーム内で使用することができます。
現在、クロスプレイは Windows PC のゲームで利用できます。 Nintendo Switch、PlayStation、および Xbox コンソール プラットフォームでのサポートは、今後行われる予定です。 macOS、Linux、Android、および iOS でのサポートは、今後行われる予定です。
ゲームの統合 クロスプレイを利用するには、次の統合ステップを実行する必要があります。
-
ブランド レビューを含む、新しい Epic Account Services の OAuth アプリケーションを作成します。
-
SDK をゲーム クライアントと統合します。
-
Epic Games Store の外部で公開されるビルドの場合は、Epic Online Services のローカル サービスの再頒布可能パッケージ インストーラと、それに関連付けられた Bootstrapper アプリケーションをゲームの前提条件の一部として追加します。
以下のセクションで、各統合ステップの概要を示します。
ステップ 1: アプリケーションの構成とブランド レビュー
ゲームで Epic Account Services を利用するには、Dev Portal で製品の アプリケーションをセットアップ する必要があります。アプリケーションに必要な情報をセットアップしたら、それを ブランド レビュー に送信します。ブランド レビュー プロセスが完了するまで数日かかります。完了後、ゲームのプレイヤーは Epic アカウントを使用してログインできます。開発目的でのみ、Dev Portal の組織のメンバーである Epic アカウントは、ブランド レビュー プロセスが完了する前にゲームにログインできます。
Epic Account Services 用にアプリケーションをセットアップする詳細については、「ブランド レビューの申請プロセス」に関するドキュメントを参照してください。
ステップ 2: ゲーム クライアントでの SDK 統合
Epic アカウントのログインは、ゲーム クライアントが EOS_Auth_Login
SDK API を呼び出すと開始されます。よくあるログイン シナリオとして、このページでは、 Epic Games Store 、 Steam 、 スタンドアロン ディストリビューション での配信の詳細を記載しています。
すべてのプラットフォームおよびシナリオ全体での一般的なフローとして、ゲーム クライアントでローカル ユーザーのために何らかのタイプの認証情報を取得し、それを EOS_Auth_Login
SDK API に渡す、という方法があります。スタンドアロン ディストリビューション では、ログイン プロセスの一環として Epic アカウントの認証情報を求めるプロンプトをユーザーに表示する代わりに、認証情報の入力が必要ない EOS_LCT_AccountPortal
ログインによる方法を使用することもできます。
ゲーム内オーバーレイを使用してユーザーに必要なステップを案内し、SDK が完全にログイン フローを制御します。ユーザーが正常に完了するかキャンセルすることでログイン フローを完了すると、SDK は、 EOS_Auth_Login
SDK API の完了コールバックにより、制御をゲーム アプリケーションに返します。Steam では、SDK によって管理されるログイン フローの一環として、ユーザーの Steam アカウントは暗黙的にログイン済み Epic アカウントにリンクされます。
SDK API の統合の詳細については、「Auth インターフェース」のドキュメントを参照してください。
ステップ 3: Bootstrapper およびサービスの再頒布可能パッケージ インストーラ
ゲームの前提条件の一部として Bootstrapper アプリケーションおよびローカル サービスの再頒布可能パッケージ インストーラを含める方法のガイダンスについては、「再頒布可能パッケージ インストーラ および Bootstrapper」のドキュメントを参照してください。
プレイヤーの体験
クロスプラットフォームのソーシャル機能にアクセスして、一緒にプレイしたり、フレンドを追加したり、ゲームの招待を送信したりするには、プレイヤーは Epic アカウントを持っている必要があります。好みに応じて、ゲームではクロスプレイを有効にするための任意の選択肢として、Epic アカウントのログインを提供できます。また、たとえば、ゲームのロビー メニューに入る前にログインとアカウントの作成を求めることもできます。
統合プラットフォーム オプションを (SDK初期化の一部として) 指定すると、ゲーム内オーバーレイのフレンドリストにローカルプラットフォームのフレンドも含まれるようになります。
ソーシャル オーバーレイとフレンド
ソーシャルオーバーレイでは、プレイヤーは、Epic Games のフレンドと、プレイしているプラットフォームのフレンド (プラットフォームのアカウントを Epic Games のアカウントにリンクしている場合) の両方を見ることができます。ただし、Epic Games Launcher からゲームをプレイした場合は、Epic Games のフレンドにのみ表示されます。たとえば、Steam でゲームをプレイしているプレイヤーが、Steam アカウントと Epic Games アカウントをリンクしている場合、Steam のフレンドと Epic Games のフレンドの両方をソーシャル オーバーレイで確認することができます。しかし、Epic Games Launcher でゲームをプレイしているプレイヤーがソーシャル オーバーレイで見ることができるのは Epic Games のフレンドのみになります。Steam 経由でゲームをプレイしていないため、Epic Games Launcher でプレイしている間は Steam のフレンドを見ることはできません。
ログイン
EEpic Games Store
ゲームでは、コマンドライン パラメータで受け取った (起動したゲーム プロセスに対して Epic Games Launcher から渡された) 交換コードを使用して、ローカルの Epic ユーザーがログインされます。ログインは、ユーザーによる操作なしで自動的に実行されます。
Steam
起動時に、ゲームは EOS_Platform_GetDesktopCrossplayStatus
SDK API を呼び出して、Epic アカウントのログインがオーバーレイを使用できるかどうかを確認します。ゲームでエラーが発生した場合(例:Bootstrapper または再配布可能サービスが見つからない)、プレイヤーに Steam ライブラリ内のゲーム ファイルを検証して問題を修復するよう依頼します。その後、プレイヤーにゲームを再起動して修正を適用してもらいます。
ゲームは、Steamworks SDK を介して取得した Steam AuthSessionTicket
を使用して、ローカルの Steam ユーザーを Epic アカウントにログインさせます。ユーザーは、ビルトインのユーザーオンボーディングエクスペリエンスを通じて、ローカルユーザーの Steam アカウントを Epic アカウントとリンクさせます。Steam アカウントと Epic アカウントをリンクすると、アプリケーションの連続実行や、Epic Account Services を使用するあらゆるゲームタイトルで、ユーザーへの自動ログインが可能になります。
既存の Epic アカウントを持たない新しいユーザーの場合は、煩雑さがない Epic の新規プロキシ アカウントを作成するよう選択できます。これによってユーザーの Steam アカウントが新規作成された Epic アカウントにリンクされ、連続して実行されるアプリケーションへの自動ログインが可能になります。また、ユーザーは、メール アドレスやパスワードなど、追加の詳細情報を登録しなくて済みます。
Epic のプロキシ アカウントは、メールアドレスとパスワードが関連付けられた、通常の Epic アカウントと同様に利用できます。たとえば、ユーザーが後から Epic Games Launcher をインストールする場合、Steam アカウントのログイン認証情報を使用して Epic アカウントにログインできます。その際、ユーザーはアカウントにメール アドレスを登録し、パスワードを設定するよう求められます。
Steam でのビルトイン ユーザー オンボーディング体験で表示されるウェルカム画面。煩雑さがない Epic のプロキシ アカウント作成がサポートされている。
スタンドアロン ディストリビューション
起動時に、ゲームは EOS_Platform_GetDesktopCrossplayStatus
SDK API を呼び出して、Epic アカウントのログインがオーバーレイを使用できるかどうかを確認します。ゲームでエラーが発生した場合(例:ブートストラッパーまたは再配布可能サービスが見つからない)、ゲームのインストールに必要な前提条件が欠落していることを修復する手順をプレーヤーに示します。
ゲームにより、ユーザーは既存の認証コンテキストなしで Epic カウントにログインされます。ユーザーがビルトインのユーザー オンボーディング体験に案内された後、SDK は保持されている Epic のリフレッシュ トークンをローカル デバイスに格納し、連続して実行されるアプリケーション全体で自動ユーザー ログインを有効にします。
年齢確認
Epic アカウントのログインの一環として、ユーザーは生年月日を入力するよう求められる場合があります。ユーザーが幼い場合は、ログイン プロセスを正常に完了する前に、Epic アカウントについて、またはアプリケーションでのデータ共有について保護者による同意を得るよう求められる場合があります。
このプロセスは SDK によってすべて管理されます。ユーザーがまだ保護者による同意を取得していない場合、 EOS_Auth_Login
および EOS_Auth_LinkAccount
SDK API は EOS_Auth_AccountFeatureRestricted
エラーを結果として返します。ゲームでは、プレイに関する保護者による同意を得た後でログイン プロセスを再開し、ユーザーが正常にログインできるようにすることができます。または、その他の方法でユーザーに同意の状況の確認を求めることもできます。
オーバーレイ
SDK は、ゲーム内オーバーレイを提供し、ゲームおよびプラットフォーム全体でプレイヤーが Epic のフレンドにアクセス可能にします。プレイヤーはサポートされるあらゆるプラットフォームで、フレンドを検索および追加したり、オンラインのフレンドを確認したり、ゲームの招待を送信したりできます。
また、別のプレイヤーをプログラムによって Epic のフレンドとして追加する場合などは、ゲーム独自の UI に Epic のフレンド機能の一部を統合できます。これには、 EOS_Friends_SendInvite
SDK API を使用できます。
オーバーレイに必要なのは、ゲームから最小限の SDK コードを統合することのみです。ゲームでオーバーレイを有効にする方法の詳細については、「オーバーレイ」に関するドキュメントを参照してください。
マッチメイキング
すべてのプラットフォームでゲームのマッチメイキング プールを統合するには、 Lobbies または Sessions SDK インターフェースを使用します。どちらのインターフェースも、 オーバーレイ とすぐに統合できるため、ゲームにクロスプラットフォームのゲーム招待のサポートを簡単に追加できます。
さらに、SDK 初期化の一部で integrated platforms オプションを指定すると、ゲーム招待がネイティブで統合されます。これによって各プラットフォームでユーザーが馴染みのある体験をローカル プラットフォームでも提供し、一貫した体験を実現できます。