再頒布可能パッケージ インストーラ

ユーザー認証とソーシャル体験を統合および統一する再頒布可能パッケージ

再頒布可能パッケージ インストーラ

注記: 現在、EOS 再頒布可能パッケージは Windows で利用できます。Linux および macOS でのサポートの詳細については、EOS public roadmap を参照してください。

ゲームを複数の PC ストアフロントで配布している場合や、ストアフロントに頼らず配布している場合、Epic Online Services (EOS) を利用すると、ユーザー認証とソーシャル体験をディストリビューション全体で統合および統一できます。たとえば Steam では、EOS のゲーム内オーバーレイを使用すると、ユーザーは Epic のフレンドと Steam のフレンドをすべて 1 つのリストで表示し、インタラクションを行うことができます。

Epic Games Store と Steam における PC 向けクロスプレイのソーシャル機能の詳細については、「Epic Account Services を使用したクロスプレイ」のページをご覧ください。

概要

EOS Social Panel と Epic アカウントのログイン体験は、ゲームのための EOS SDK 統合によって提供されており、プレイヤーに別々に配布されるゲーム内オーバーレイを使用しています。このオーバーレイ テクノロジーのコンポーネントを配布するため、ゲームのインストールの前提条件の一部としてインストールを行う、ゲーム用の別々の EOS サービスの再頒布可能パッケージが提供されています。

これによってバックエンドの制御されたアップデートを使用し、Epic によってオーバーレイを自動的に最新状態に維持できるため、ゲーム独自のアップデート サイクルからは分離されます。このメカニズムによって配信される自動アップデートにより、新しいコンテンツによる継続的なアップデートを行わなくなったゲームにも、新しいクロスプラットフォームのソーシャル機能が追加されます。

ゲーム クライアントの起動フロー

画像をクリックすると拡大されます。

Epic Games Store の外部から配布する場合に EOS オーバーレイをゲームに追加するには、次の手順を行います。

  • EOS サービスの再頒布可能パッケージである「EpicOnlineServicesInstaller.exe」がゲームのインストールの一部として (またはゲーム ファイルの検証時に) インストールされるように追加する。また、ゲームのアンインストール時にアンインストールされるようにする。

  • EOS Bootstrapper アプリケーションを、ゲームを起動するメインの実行可能ファイルとして追加する。このアプリケーションは、ローカルにインストールされた EOS サービスの初期化とゲーム クライアント アプリケーションの起動を行います。

サービスの再頒布可能パッケージ インストーラ

EOS サービスの再頒布可能パッケージは、EOS オーバーレイをダウンロードおよびインストールし、自動的に最新状態に維持します。このサービスは、ゲームがユーザーによって起動されると実行され、ゲームが終了されると自動的に終了されます。サービスは、ゲームの実行時にのみ実行されます。オーバーレイのアップデートのチェックは、ゲーム起動時に実行されます。

このコンポーネントは、エンドユーザー向けにはゲーム ファイルの一部として配布され、ゲームのインストールの前提条件の一部としてインストールされます。ゲームがインストールまたはアンインストールされる際、EOS サービスの再頒布可能パッケージもそれぞれインストールまたはアンインストールされます。また、重要な点として、ゲームのインストールを検証および修正する機能を配信プラットフォーム クライアントでユーザーに提供する場合、必要に応じて EOS サービスの再頒布可能パッケージ インストーラを呼び出し、パッケージが修正されていることを確認してください。

Steam の installscript

これは、テンプレートの「installscript.vdf」ファイルであり、Steam プラットフォームでゲームを配布する際に使用できます。必要な変更は、 {EosProductId}{SteamAppId} をゲームの識別子と一致させることのみです。このテンプレートでは、ゲームのルート ディレクトリ内の「EpicOnlineServices」フォルダー配下で「EpicOnlineServicesInstaller.exe」を配布することを想定しています。

"InstallScript"
{
    "Firewall"
    {
        "EOS Bootstrapper - {SteamAppId}"       "%INSTALLDIR%\\EOSBootstrapper.exe"
    }
    "Run Process"
    {
        "EpicOnlineServices"
        {
            "HasRunKey"     "HKEY_LOCAL_MACHINE\\Software\\Valve\\Steam\\Apps\\{SteamAppId}\\EOS"
            "Process 1"     "%INSTALLDIR%\\EpicOnlineServices\\EpicOnlineServicesInstaller.exe"
            "Command 1"     "/install productId={EosProductId} /quiet"
        }
    }
    "Run Process On Uninstall"
    {
        "EpicOnlineServices"
        {
            "Process 1"     "%INSTALLDIR%\\EpicOnlineServices\\EpicOnlineServicesInstaller.exe"
            "Command 1"     "/uninstall productId={EosProductId} /quiet"
        }
    }
}

ローカル開発のサービスを実行する

ログイン タイプが EOS_LCT_AccountPortal または EOS_LCT_ExternalAuth の、Epic アカウント ログイン (EOS_Auth_Login) を使ったアプリケーションは、EOS サービスをバックグラウンドで実行する必要があります。ローカル開発中は、たとえば Unreal Engine または Unreal Editor でゲームを実行するときにブートストラッパー アプリケーションを使用する必要がありません。

ローカル開発目的のサービスを実行するには、「Program Files (x86)\Epic Games\Epic Online Services\」のサービス インストレーション ディレクトリに移動して EpicOnlineServices - Development.cmd ショートカットで開始します。サービスを停止するには、Windows タスクバーのシステム トレイ アイコンを右クリックします。

Bootstrapper アプリケーション

EOS Bootstrapper は実行可能ファイルであり、実際のゲーム クライアントの実行可能ファイルを起動する、一時的なランチャー アプリケーションとして使用します。ユーザーがゲームを起動する際に、ターゲットの実行可能ファイルを実行することを目的としています。

EOS Bootstrapper は、ゲーム インストールの一部としてすでにインストールされた EOS サービスを起動します。EOS サービスは、自身のソフトウェア バージョンおよび EOS オーバーレイ コンポーネントに関する自動的なアップデート チェックを実行し、利用可能なソフトウェア アップデートがあれば自動的にインストールします。

EOS サービスが初期化されると、EOS Bootstrapper はターゲットのゲーム クライアントの実行可能ファイルの実行に自動的に進みます。このフローにより、ゲーム起動時にゲーム アプリケーションおよび EOS SDK で EOS オーバーレイが確実に利用可能な状態になります。EOS オーバーレイは、ゲーム内の Epic アカウントのログイン体験および Epic Social Panel が機能するための要件となります。

使用方法

EOS Bootstrapper の実行可能ファイルは、ゲーム ファイルの一部として配布されます。通常、メインのゲームの実行可能ファイルと並べて配置されますが、ゲームのインストール ディレクトリの別のフォルダ内に配置することもできます。EOS Bootstrapper の実行可能ファイルは、その実行可能ファイルと同じ名前のコンフィグ ファイルとペアにします。たとえば、「LaunchGame.exe」と「LaunchGame.ini」のようにします。

コンフィグ ファイルを生成し、必要に応じて EOS Bootstrapper の実行可能ファイルのアイコンを変更するには「EOS Bootstrapper ツール」のセクションを参照してください。

トラブルシューティング

実行するたびに、EOS Bootstrapper はログ ファイルを「%LOCALAPPDATA%\Epic Games\Epic Online Services\Bootstrapper\Logs\EOSBootstrapper.log」に書き込みます。ゲーム クライアントのプロセスが起動しなかったり、EOS SDK が Epic アカウントのログインや EOS オーバーレイに関連する予期しないエラーを返したりする場合は、Bootstrapper のログのエラーを確認してください。

Bootstrapper tool

EOS Bootstrapper Tool は、コマンドラインのツールであり、EOS Bootstrapper アプリケーションによって使用されるコンフィグ ファイルを生成するために使用します。このツールを使用すると、ゲーム クライアントの実行可能ファイルとプログラム アイコンを一致させる場合など、必要に応じて EOS Bootstrapper の実行可能ファイルを独自のプログラム アイコンで更新することもできます。

EOS Bootstrapper Tool は開発ツールであり、ゲーム ファイルに含めてエンドユーザーに配布するものではありません。通常はゲーム クライアントのビルド パイプラインの最後に追加しますが、EOS Bootstrapper のコンフィグ ファイルを作成するための 1 回限りのスタンドアローン ツールとして使用することもできます。

使用方法

ツールを実行すると、次の処理が行われます。

  1. ローカルの Boostrapper 実行可能ファイル (EOSBootstrapper.exe) を出力ファイル パス (--output-path) にコピーする。

  2. 実行するターゲット アプリケーションの実行可能ファイル (--app-path) を使用し、コピーした Bootstrapper の実行可能ファイルのプログラム アイコンとバージョン情報 (設定されている場合) を更新する。

  3. コピーされた Bootstrapper の実行可能ファイルの横に新しい .ini コンフィグ ファイルを作成する。

完全な使用方法と利用可能なすべてのオプションを確認するには、コマンドラインのプロンプトで「EOSBootstrapperTool.exe --help」を実行してください。

注記: プログラム アイコンを変更する場合は、コピーした出力の EOS Bootstrapper の実行可能ファイルにデジタル コード署名を必ず追加してください。

使用例

開発時のディレクトリ ツリーが次のようになっているとします。

.\
GameBuild\Bin\GameClient.exe
Tools\EOSBootstrapper.exe
Tools\EOSBootstrapperTool.exe

この場合、EOS Bootstrapper Tool は次のようなコマンドラインを使用して実行します。

EOSBootstrapperTool.exe --output-path ..\GameBuild\Bin\LaunchGame.exe --app-path GameClient.exe

このコマンドラインは、元の「EOSBootstrapper.exe」の名前を「LaunchGame.exe」に変更した上で、ゲームのビルド ディレクトリ内のゲーム クライアントの実行可能ファイルと同じ並びにコピーし、コンフィグ ファイル「LaunchGame.ini」を生成します。

Bootstrapper のコンフィグ

EOS Bootstrapper アプリケーションが動作するにはコンフィグ ファイルが使用され、このファイルは必須のものです。このファイルは、EOS Bootstrapper Tool を使用して生成できます。

また、手軽に手動で作成することも可能です。

オプション

説明

ApplicationPath

文字列

実行するターゲット アプリケーションの実行可能ファイルをポイントします。Bootstrapper の実行可能ファイルとゲーム クライアントの実行可能ファイルが同じフォルダ内に配置されている場合、これはゲーム クライアントの実行可能ファイルの名前にします。例えば「Game.exe」です。それらのファイルが異なるフォルダに配置されている場合、これは Bootstrapper の実行可能ファイルの位置からゲーム クライアントの実行可能ファイルに対する相対パス (実行可能ファイル自体の名前を含む) です。例えば「Bin\Game.exe」です。

WorkingDirectory

文字列

(オプション) ターゲット アプリケーション実行時に設定する作業ディレクトリの相対パス。

NoOperation

ブーリアン [True, False]、整数 [0, 1]

オプション。デフォルトでは false です。設定されている場合、ターゲット アプリケーションは EOS サービスを初期化することなく直接起動します。この設定は、他のデベロッパーやゲーム テスターが開発環境内でサービスの再頒布可能パッケージ インストーラを実行するための統合が完全でない場合など、EOS サービスなしでゲームを実行するために使用できます。

WaitForExit

ブーリアン [True, False]、整数 [0, 1]

オプション。デフォルトでは false です。設定されている場合、Bootstrapper は、ターゲット アプリケーションが終了するまで終了しません。この設定は、プラットフォーム ランチャーがターゲットの実行可能ファイル終了時にゲームを実行中でないとマークするシナリオなどで利用できます。Bootstrapper は、プラットフォーム クライアントが起動するターゲットの実行可能ファイルとなるため、ゲーム クライアント自体が終了するまでは Bootstrapper がバックグラウンドでサイレントに実行されるよう構成することができます。

構成例

ApplicationPath=GameClient.exe
WorkingDirectory=
NoOperation=0
WaitForExit=0