ランチャー

ランチャーは、ビデオゲームを開発するパートナー向けのカスタマイズ可能な配信ツールです。この製品は、コンテンツの配信コストを最適化しながら、仮想通貨からビデオストリーミングまで、あらゆるモジュールを集中管理します。特徴:

  • マルチゲームのサポート
  • 複数のゲーム配布方法
  • ストアでの仮想アイテムや物品の販売
  • カスタマイズ可能なUIと認証方法を使用した組み込みログイン
  • カスタマイズ可能なランチャーUI
  • Windows上で動作する
  • 20言語にローカライズされたUI
  • ユーザーへのランチャーアップデートの自動配信
  • P2P / CDNゲームの配信とアップデート
  • エクソラパブリッシャーアカウントから設定可能
  • ニュースとバナーの管理
  • ユーザーはゲームの地域を選択可能
  • チャネリングパートナーブリッジ:事前に統合されたゲームプラットフォームへのゲームのシームレスな統合

ランチャーの技術的実装についての詳細はホワイトペーパーを参照してください。

Note: すでにいずれかのエクソラモジュールをインストールしている状態でランチャーの統合を希望する場合は、アカウントマネージャーにお問い合わせください。

統合フロー

  1. エクソラのパブリッシャーアカウントに登録。
  2. プロジェクトを作成
  3. ランチャーを設定
  4. ランチャーUIをカスタマイズ
  5. ランチャーのインストールファイルを生成して、アーカイブを構築。
  6. ビルドしたゲームをエクソラのアップデートサーバーへアップロード
  7. ランチャーのインストールファイルを新規ユーザーへ送信。

プロジェクトの作成

  1. まずプロジェクトを開き、新規プロジェクトの作成をクリック。
  2. 設定モードでは:
    1. プロジェクト名を追加。
    2. ゲームのウェブサイトへのリンクを設定。

Note: パブリッシャーアカウントのページはそれぞれ、1つのゲームに対応します。

ランチャーの設定

パブリッシャーアカウントにランチャーインスタンスを作成する方法:

  1. ランチャー名を設定。
  2. UIの言語を選択。
  3. 定義済みのログイン設定の一つを選択するか、名前を送信して独自のログイン設定を作成します。
  4. パブリッシャーアカウントで設定したプロジェクトを最低1つ追加。

パブリッシャーアカウントでランチャーの設定を完了したら、次の操作を行います。

  1. GitHubリポジトリからランチャーをクローンする。
  2. クローンしたリポジトリでlauncher/winフォルダを開いて、config.jsonファイル内のオブジェクトの値を指定。

{
   "launcher_project_id": "8c91ecf3-e7b0-46a8-aaf7-4c419ef8ef4b",
   "login_project_id": "bd2e1104-5494-48f9-ac50-98f230062df1",
   "callback_url": "https://callback_url.com",
   "product_name": "Launcher",
   "link_support": "https://support_example.com",
   "link_community": "https://community_example.com",
   "game_autoupdate": false,
   "hide_peer_seed_info": false,
   "hide_email": false,
   "build_number": 1
}

ランチャーUIのカスタマイズ

ランチャーUIをカスタマイズする方法は統合する製品のバージョンによって異なります。バージョンごとのカスタマイズパラメータの説明はリンクから利用できます。

アーカイブとインストーラーの生成

scripts/win/deploy.bat スクリプトは次のものを生成します。

  • 新規ユーザーに送信できるランチャーのインストーラー。
  • ランチャーが、ユーザーへ配信する自動 アップデート のアーカイブをビルドする。

deploy.batは次の方法で起動できます。

  • スクリプトファイルをダブルクリック。これによりビルドは、クローンしたフォルダのtargetというサブフォルダーに移動します。
  • コマンドラインから指示するには、追加で--out <directory>を使用します。<directory>で、好みのビルドインストールパスがある場所です。

deploy.bat --out C:/Target

Notice: インストールファイルは、SHA-256 EV 証明書で署名されている必要があります。以下のEV証明書発行機関のいずれかからEV証明書を取得することができます:Thawte、Verisign/Symantec、Comodo and Digicert。やり方の詳細はここです。インストールファイルがパブリッシャーアカウントで生成されている場合は、自動的に署名されるのでご注意ください。
Note: ランチャーのビルドで生成したアーカイブを、パブリッシャーアカウントにアップロードする必要があります。

ゲームビルドのアップデート

ゲームビルドをアップデートサーバーへロードするときは、 ビルドローダーというコマンドラインユーティリティーを使用します。

ビルドローダーのシステム要件:

  • Windows 7/8/10 64ビットOS
  • 1.6 GHz CPU
  • 容量に100 MBの空きがあるRAM
  • ディスク容量の空き:1.5×ビルドサイズ

こちらは次の引数を使用します。

  • --init-ユーティリティを初期化
  • --update-ゲームビルドをサーバーへ送信
  • --builds-list-ゲームリスト一覧を入手
  • --descr <build-description>-ビルドの記述を送信
  • --api-key <API-key>-APIキーを送信
  • --game-path <path-to-game>-ゲームビルドへパスを送信

ゲームビルドをアップロードする場合。

  1. パブリッシャーアカウントのビルド設定を開く。
  2. APIキーをコピーする。
  3. ビルドローダーのダウンロードとインストールを実施。
  4. ユーティリティを初期化
  5. サーバーへゲームビルドをアップロードする。
  6. ゲームビルドをステージに配置する。
  7. ゲームファイルをセットアップする。

ビルドローダーの初期化

ユーティリティを初期化するには、以前にコピーしたAPIキーとパスをゲームビルドに渡す必要があります。

> build_loader.exe --init --api-key <api-key> --game-path <path-to-game>

> build_loader.exe --init --api-key E51DPZ486S9IUGVF43AH4T48QB7246OQ --game-path C:\Games\LastGameBuild

Note:
  • パラメータを変更したい場合を除き、ユーティリティを初期化する必要があるのは一回だけです。
  • ゲームビルドへのパスにはラテン文字しか含まれていない場合があります。

ゲームビルドをサーバーへアップロード

ゲームビルドをサーバーにアップロードするには、ビルドパスを指定してください。

> build_loader.exe --update --game-path <path-to-game>

> build_loader.exe --update --game-path C:\Games\LastGameBuild

ユーティリティを初期化するとき、または以前のビルドをアップロードするときにすでに使用している場合は、--game-pathパラメーターを省略できます。

初めてのアップロード中、アップデートサーバーはゲームビルドをすべて受信します。その後、ビルドローダーから生成されたゲームパッチを受け取ります。

ステージ上にゲームビルドを配置する

サーバーにアップロードすると、ゲームビルドはパブリッシャーアカウントのプロジェクト設定>ビルド設定>ビルドリストに表示されます。

ゲームビルドを配置するステージを2つの内から1つ選んでください。

  • master:エンドユーザーがゲームを利用できるようになる。
  • test:ゲームはテストのみに利用できるようになる。

Note: ゲームをテストする場合は、-game_stage testパラメータをコンソールで渡したランチャーを開始してください。例:launcher.exe -game_stage test

ゲームファイルの設定

ランチャーがユーザーへ正しいファイルを届けられるように、まずはインストールファイルを初期化しましょう。

  1. パブリッシャーアカウント内のビルド設定からゲームファイル設定を開く。
  2. 起動するゲームのファイル名とエクステンションを入力(例、coolgame.exe)。
  3. ゲームのインストレーションパスを指定。
  4. ゲームの起動に必要な再配布可能なパッケージ(Microsoft Visual C ++ 2017 Redistributableなど)を追加。

ランチャーは、ゲームに次のパラメーターを送信します:

  • --xsolla-locale <locale>:インターフェイス言語;
  • --xsolla-login-token<token>:XsollaログインJWT(JSONウェブトークン)。

game.exe --xsolla-login-token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJlbWFpbCI6InAudHVnb2x1a292QHhzb2xsYS5jb20iLCJleHAiOjE1ODU1MDYxMTMsImdyb3VwcyI6W10sImlhdCI6MTU4NDY0MjExMywiaXNzIjoiaHR0cHM6Ly9sb2dpbi54c29sbGEuY29tIiwicGFydG5lcl9kYXRhIjp7ImFkbWluIjp0cnVlfSwicGF5bG9hZCI6IiIsInByb21vX2VtYWlsX2FncmVlbWVudCI6dHJ1ZSwicHJvdmlkZXIiOiJ4c29sbGEiLCJyZWRpcmVjdF91cmwiOiIiLCJzdWIiOiIyNmYxNzI5Ni00Nzk5LTExZTgtOTBkMC00MjAxMGE4YTAwMTkiLCJ0eXBlIjoic29jaWFsIiwidXNlcm5hbWUiOiJzb21lX3VzZXJAbWFpbC5jb20iLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6Ikk2QTJrTEZPQ2JkcnUzamIxMjNyT3JmWnNkTnFpdVcxMjNpWTdKcW85OHI5b0hPbyIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiNDBkYjJlYTQtNWQ0Mi0xMWU2LWEzZmYtMDA1NDU2YTBlMTRhIn0.ZsTNiwY2iPp7HKqHs5g6JXzL2kv_RVuMNBlF-Tn2ccE --xsolla-locale en

チュートリアル

ランチャーのシステム要件

ランチャーを快適に操作できる推奨環境:

  • Windows 7/8/10 64ビットOS
  • 1.6 GHz CPU
  • 容量に300 MB空きがあるRAM
  • ディスク容量の空き:180 MB
  • 最新バージョンのDirectX

レシピ

こちらのレシピは、次のようなランチャーの上級機能を試すときに役立ちます:

よくある質問

質問 独自でランチャーを作れるのにエクソラ ランチャーを使う必要性は何ですか?

回答 ゲーム開発の最終段階やゲーム完了後に、独自ランチャーを作成するリソースを使う必要がありません。

質問 エクソラランチャーの費用は?

回答 ランチャーは付加価値製品です。ランチャーへのアクセスは、エクソラの標準料金に既に含まれています。エクソラCDN経由でゲームやアップデートを提供する場合、追加費用が発生することがあります(GB / $ 0.01)。ただしP2Pバランシングシステムで、コストを平均80%削減できます。

質問 ゲームではランチャーを動作させる必要がありますか?

回答 既定では、ランチャーは常に実行されています。ゲームを起動するとシステムトレイに隠れるので、リソースを使い果たしません。プレイヤーはランチャーのプロセスをシャットダウンできます。ゲームセッション中に接続されないため、ゲームの実行に影響は与えません。

質問 Steamとの違いはありますか?また類似点はありますか?

回答 エクソラランチャーは、Steamとゲーム間の橋渡しのような役割を担います。

質問 Steamでリリースされると、全部がランチャーからダウンロードされますか?それとも、Steamへのアップロードはフルゲーム+ランチャー、そしてランチャーから追加のアップデートを取得という形になるのでしょうか?

回答 ランチャーは上記のいずれかを行うことができます。ゲームの最新バージョンをランチャーにラップし、Steamに配布することができるので、追加のダウンロードは必要ありません(全ゲームの配信作業は、Steamに依存します。)。アップデートをすばやく配信したい場合は、ランチャーを高速配信ソリューションとして使用できます。ゲームをランチャーにラップして、Steamに再アップロードする必要はありません。お好みに合わせていずれかの方法をご利用ください。

質問 開発者はSteam用とスタンドアロン用に別々のビルドを2つ維持する必要がありますか?

回答 いいえ、別々のビルドは必要ありません。また、スタンドアロンとSteamの両方の配信方法を利用すると、ランチャーは両方のプラットフォームから1つのデータベースにユーザーを集めるので、大変役に立ちます。"seamless registration"と呼ばれる機能があります。これは、Steamで初めてゲームを実行する新しいユーザーが登録プロセスを追加手続きなしに、シームレスに通過できるようにする機能です。Steamエコシステム外のお客様の公式ウェブサイトにアクセスし、Steam OpenIDを使用してそこへログインし、公式/集中コミュニティ(フォーラムでのコミュニケーション、新しいゲームの発見、ニュースを読むなど)に参加することを可能とします。

質問 Steamのツール(ランチャーなど)を使用中です。またCDN費用を心配する必要がありません。御社の製品を使用するとリスクを伴うことになりませんか?

回答 SteamがCDN料金を払っている間も、お客様はエクソラランチャーを使用できます。またSteamを通して、ランチャーにラップしたゲームを配信可能です。リスクはなく、メリットがたくさんあります。ランチャーを使用すると、お好みの方法でまるまるカスタマイズできるアクティブなコミュニティと交流できるからです。またユーザーストレージを収集できるので、Steamエコシステム外のオーディエンスに接触して、ファンと交流可能です。

質問 そちらのランチャーに予め統合しているCDNの一覧はありますか?今後の統合について、CDN提供企業に連絡する必要がありますか?一覧にないCDNを使えますか?

回答 はい。エクソラは予め統合しているCDNの一覧を用意しています。一覧に載っているのはG-Core LabsやAkamai。エクソラのランチャーに統合できるCDN提供企業へ連絡する必要はありません。他のCDNを使用したい場合は、アカウントマネージャーまでお問い合わせください。

質問 なぜSolid State Networksを使えないのですか?

回答 Solid State Networksの主な事業はCDNです。同社のランチャーは、CDN費用の最適化を想定して設計されていません。

質問 ランチャーにIPCソリューションはありますか?

回答 ランチャーにはIPC通信を必要とする機能がないため、現在のところIPCはありません。ライブストリーミングや、IPC(SDK経由)が必要なオーバーレイ内のゲームストア機能などを将来的に追加する予定なので、IPCを加える予定もあります。

質問 エクソラランチャーのユーザーは、どのようにゲームへアクセスできますか?サブスクリプション、クーポン、プロモコードでゲームを配布できますか?

回答 現在ユーザーがゲームにアクセスできるのは、ゲームキーと引き換えた場合のみです。

質問 ゲームキー未購入の場合、エクソラランチャーのユーザーはゲームのアップデートをダウンロードできますか?

回答 いいえ。ゲームとゲームの更新内容は、ゲームキーを購入しないとご利用いただけません。

質問 P2P接続で同じLAN上のPCを接続するソリューションはありますか?その場合、データをLAN上だけで転送できますか?

回答 いいえ。今のところ、そういった解決策はありません。

質問 エクソラランチャーは、アクセスレベルに対応していますか?例えば、"alpha"はテスト用で、"beta"はエンドユーザー用と用意していますか?

回答 はい。エクソラランチャーはアクセスレベルに対応しています。ゲームビルドをアップロードするときに、2ステージ中1つを選択可能です。ステージはテスト用のtestかエンドユーザー用のmasterになります。stage=testで公開したゲームをランチャーで開始する場合は、-game_stage testパラメータをコンソールで渡してください。例:launcher.exe -game_stage test

質問 エクソラランチャーのゲームリストに表示されるゲームは何ですか?追加済みの全ゲーム、それともユーザーが購入したゲームのみですか?

回答 このリストには、ランチャーに追加した全ゲームを記載しています。ユーザーが購入したゲームには再生ボタンがあり、残りのゲームには購入ボタンがあります。

質問 特定のユーザーは無料ゲームキーを受け取れますか?その場合、使用方法は?

回答 はい。パブリッシャーアカウントからゲームキーをダウンロードして、自由にユーザーへ送信できます。ユーザーはランチャーでキーを有効化できます。

質問 ランチャーで認証が終わった後、ユーザーはゲームで自動認証されますか?

回答 はい。自動ゲーム内認証ソリューションをご提供しています。 --xsolla-login-tokenパラメータは、エクソラランチャーからユーザーデータをゲームへ送信する際に使用されます。ユーザーデータを取得する際は、パラメータの値をデコードしてください(レシピを参照)。

質問 ランチャーのダウンロードリンクは、ゲームキーの起動指示などでユーザーに送信できますか?

回答 ランチャーのダウンロードリンクは、ゲームキーの起動指示に記載しておりません。個別にリンクを送信する方法:

  1. インストールファイルを生成
  2. パブリッシャーアカウントのゲームキー設定で、インストールファイルをDRMフリーの配布パッケージとしてアップロード。
ゲーム購入後、配布パッケージのダウンロード用リンクが表示されます。