ランチャー

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

  • ストアでの仮想アイテムや物品の販売
  • カスタマイズ可能なUIと認証方法を備えた組み込み型ログイン
  • ランチャー UIのカスタマイズ
  • ウィンドウ上で実行可
  • UIを20か国語にローカライズ
  • ランチャーの変更内容をユーザーに自動配信
  • 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",
   "default_p2p_enabled": true,
   "game_autoupdate": false,
   "hide_peer_seed_info": false,
   "hide_email": false,
   "build_number": 1
}

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

色や画像、ランチャーのカラーテーマの変更方法:

  1. クローンしたリポジトリでlauncher/winフォルダを開く。
  2. UIStyle.jsonファイルでオブジェクトの値を指定。

"error_window": {
  "bg_color": "#313131",
  "text_color": "white",
  "bottom_line_color": "white"
},
"error_report_window": {
  "bg_color": "#313131",
  "header_text_color": "white",
  "error_text_color": "white",
  "send_error_text_color": "#80FFFFFF",
  "bottom_line_color": "white"
},
"game_page": [
  {
    "game_id": 4,
    "bg_game_image": "img/Backgrounds/game_screen_bg.jpg",
    "version_text_color": "#7FFFFFFF",
    "social_text_color": "#7FFFFFFF"
  },
  {
    "game_id": 6,
    "bg_game_image": "img/Backgrounds/div_background.jpg",
    "version_text_color": "#7FFFFFFF",
    "social_text_color": "#7FFFFFFF"
  }
]

ランチャーでストアをカスタマイズする場合は、をconfig.json使用します。

画像の置き換え

ランチャーの画像は img フォルダーからご参照いただけます。ランチャーセクションで「背景」、「ログインウィンドウ」などグループ分けしています。お手持ちの画像を追加する際は、類似フォルダーと置き換えるか、フォルダーに新しいファイルを追加して、UIStyle.json 内のリンクを変更してください。

my_custom_bg_image.jpgをログインウィジェットの背景として使用するには:

  1. 画像を img/LoginWindow に移動する。
  2. UIStyle.jsonlogin_window オブジェクトを見つけ、
  3. “bg_image”:“img/LoginWindow/ login_background.png “ から“bg_image”:“img/LoginWindow/my_custom_image.jpg”

Note: 2倍サイズの画像を追加することで、ランチャーを4Kスクリーンに適用できます。画像を2倍にするときは、ファイル名と拡張子の間に”@2x”を付け加えてください。例: login_background@2x.png

フォントの置き換え

ランチャーが使用しているフォントは、Lato Regular、中、太字、黒です。フォントのファイルは fonts フォルダーに保管しています。

フォントの置き換え方は次のとおりです。

  1. fonts フォルダーへ新しいフォントを追加。
  2. UIStyle.json にある次のラインで、新しいフォントのパスを指定。

"fonts": {
    "regular": "fonts/Lato-Regular.ttf",
    "medium": "fonts/Lato-Medium.ttf",
    "bold": "fonts/Lato-Bold.ttf",
    "black": "fonts/Lato-Black.ttf"
}

Lato-Black.ttfMy_Own_Cool_Font.ttf へ置き換える場合。

  1. My_Own_Cool_Font.ttffonts フォルダーへ追加。
  2. UIStyle.json で、次のように My_Own_Cool_Font.ttf のパスを指定。

"fonts": {
        "regular": "fonts/Lato-Regular.ttf",
        "medium": "fonts/Lato-Medium.ttf",
        "bold": "fonts/Lato-Bold.ttf",
        "black": "fonts/My_Own_Cool_Font.fft"
}

色の変更

ランチャーUIエレメントの色は、 UIStyle.json 内のウィンドウとコンポーネントでグループ分けしています。エレメントの色を変更するときは、類似セクションを開き属性値を編集します。

次の色形式を使用可能です。

  • SVGカラー。例:”white”。
  • #RRGGBB。例:”#F13900”。
  • #AARRGGBB。例:”#40FFFFFF”。

設定ウィンドウの背景を赤に変更する場合。

  1. UIStyle.json を開き、settings_screen オブジェクトを見つける。
  2. bg_color“bg_color”:“#FF0000” へ変更。

ストアのカスタマイズ

ランチャーのゲーム内ストアをカスタマイズする場合は、storeオブジェクトの配列を config.json へ追加します。テーブルに指定した次のオブジェクトの値を変更可能です:

オブジェクト 説明
id パブリッシャーアカウントのプロジェクトID。
theme ストアの色テーマ。’default’か’dark’を選択可能。デフォルトは’dark’です。
size ストアにあるエレメントのサイズ。’small’か’medium’、’large’を選択可能。デフォルトは’large’です。
view ストアのエレメントの位置(縦メニューか横メニュー)。’vertical_navigation’か’horizontal_navigation’を選択可能。デフォルトは’horizontal_navigation’です。

"store": { "id" : 12345, "theme" : "default", "size" : "large", "view" : "horizontal_navigation" } 

通常アイコンの変更

特定のゲームのページでランチャーを開くとき、ユーザーは スタート メニューにショートカットを追加できます。Img/GamesIcons フォルダにある defaultIcon.ico ファイルは、デフォルトでショートカット用のアイコンに使用しています。

このデフォルトアイコンは、次の方法で変更可能です:

  • パブリッシャーアカウントのプロジェクト設定へ新しい画像をアップロードする。
  • 新しいファイルを img/GamesIcons フォルダへアップロードする。ファイルの形式は{publisher_project_id}.icoです。{publisher_project_id}の部分は、パブリッシャーアカウントのお客様のプロジェクトIDになります。

例: ランチャーに追加したID’12345’のプロジェクトのアイコンは、 12345.ico です。

エクソラランチャーでストアを全体的にカスタマイズする場合は、アカウントマネージャーへUIキットかデザインアセットを送って下さい。

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

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

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

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

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

deploy.bat --out C:/Target

Notice: インストールファイルは、SSH256証明書で確証したデジタル署名で認証してください。次の認証局から証明書を受け取れます: Thawte、シマンテック(ベリサイン)、コモド、デジサート。
Note: ランチャーのビルドで生成したアーカイブを、パブリッシャーアカウントにアップロードする必要があります。

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

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

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

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

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

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

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

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

ビルドローダーの初期化

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

> xbuild_loader.exe --init --api-key {..} --game-path {..}

Note: 該当パラメーターを変更しない限り、ユーティリティの初期化は1度で問題ありません。

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

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

> xbuild_loader.exe --update --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}: エクソラ ログイン JWT(JSON Web Token);
  • --xsolla-playfab-token {token}: PlayFabトークン。

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

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

  • 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つのデータベースにユーザーを集めるので、大変役に立ちます。「シームレスな登録」と呼ばれる機能があります。これは、Steamで初めてゲームを実行する新しいユーザーが登録プロセスを追加手続きなしに、シームレスに通過できるようにする機能です。Steam エコシステム外のお客様の公式ウェブサイトにアクセスし、Steam OpenIDを使用してそこへログインし、公式/集中コミュニティ(フォーラムでのコミュニケーション、新しいゲームの発見、ニュースを読むなど)に参加することを可能とします。

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

回答 SteamがCDN料金を払っている間も、お客様はエクソラ Lancherを使用できます。また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つを選択できます。テスト はテスト用で、マスター はエンドユーザー用です。テストステージ で公開したゲームでランチャーを起動する場合は、--game_stage testパラメータをコンソールに渡します。例:launcher.exe --game_stage test

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

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

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

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

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

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

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

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

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