報酬システム
仕組み
この報酬システムにより、実際通貨を使用してストアで商品を購入するようユーザーを促すことができます。ユーザーがクランに所属している場合、その購入額に応じてクラン全体にバリューポイントが加算されます。
個別およびクラン向けの報酬チェーンを作成し、購入したアイテムに対してユーザーに報酬を付与できます。ゲームには、任意のタイプのリワードチェーンを複数含めることができます。各チェーンの最大ステップ数は31です。各レベルについて、それを完了するために必要なバリューポイント数を定義します。
パーソナライズされた報酬チェーンを作成することも可能です。個人用設定機能により、ユーザーの属性に基づいて、特定の認証されたユーザーグループにのみそのチェーンを表示できます。パーソナライズされた報酬チェーンは、個別のユーザーまたはクラン向けに設計できます。
報酬チェーンの各ステップで、ユーザーは1から10個の報酬を受け取ることができます。クランも、各ステップでメンバーあたり1から10個の報酬を受け取ることができます。
次のアイテムタイプをユーザーに報酬として提供できます:
- 仮想アイテム
- 仮想通貨
- 仮想通貨パッケージ
- バンドル
報酬システムのセットアップ
パブリッシャーアカウント経由のセットアップ
報酬チェーンを作成する前に、ユーザーとクランがバリューポイントを獲得するために購入できるバリューポイント、報酬、およびアイテムを作成する必要があります。
パブリッシャーアカウントのプロジェクト内で手動でアイテムを作成するには、アイテムカタログ > すべてのアイテムセクションに移動します。この方法や、その他のアイテム作成方法に関する詳細は、ドキュメントのアイテムカタログセクションでご確認いただけます。
バリューポイントを作成するには:
- パブリッシャーアカウントでプロジェクトを開き、LiveOps > 報酬セクションに移動します。
- 「バリューポイントを作成」をクリックします。
- 以下のパラメータを指定します:
- イメージを追加します(任意)。
- 名称を入力します。
- 一意なSKUを入力します。
- クランバリューポイントを作成する場合は、クランバリューポイントとして使用するトグルをオンにしてください。バリューポイント作成後の設定変更は不可となります。
- バリューポイントの割り当て:アイテムを選択し、各アイテムの購入時にユーザーが獲得するポイント数を指定します。ストアにまだアイテムが登録されていない場合は、現在の設定を保存して、後からこのステップに戻ることも可能です。
- 「行を追加」をクリックして、必要なポジション数を追加します。
- 「バリューポイントを作成」をクリックします。
報酬チェーンを作成するには:
- パブリッシャーアカウントでプロジェクトを開き、LiveOps > 報酬セクションに移動します。
- 「報酬を作成」をクリックします。
- 新規報酬チェーンタイプを、個別の報酬チェーンまたはクラン向けの報酬チェーンから選択します。
- 以下のパラメータを指定してください。個別の報酬チェーンを選択した場合:
- 報酬チェーン名を指定します。
- 説明を入力します。
- ドロップダウンリストから、バリューポイントを選択します。

- クラン報酬チェーンを選択する場合:
- クランタイプのドロップダウンリストで、クランのタイプを選択します。
- クラン報酬チェーンのパラメータを設定します:
- 報酬チェーン名を設定します。
- 説明を提供します。
- 報酬チェーンのポップアップヘッダーのタイトルを設定します。
- ポップアップのヒントテキスト(ユーザーが自分のクランのために報酬を得るために何をする必要があるか)を設定します。
- 画像を追加します(任意)。
- ドロップダウンリストで、バリューポイントを選択します。

- 「次へ」をクリックします。
- 「新規ステップを追加」をクリックします。
- 以下のパラメータを指定してください:
- ステップ名。
- 報酬を受け取るために必要なバリューポイント数。
- このステップに必要な仮想アイテム数。
- 「保存」をクリックします。
- 必要なステップ数を作成し、「次へ」を追加します。
報酬チェーンをパーソナライズする場合:
- 報酬チェーンをパーソナライズするトグルをオンにします。
- 報酬チェーンの表示オプションをいずれか1つ選択し、「次へ」をクリックします:
- 特定のユーザーに報酬チェーンを表示します。パーソナライズ条件を設定します。指定した条件を満たす認証済みユーザーにのみ、チェーンが表示されます。
- 条件を満たさないユーザーに報酬チェーンを表示します。ユーザーに一致する報酬チェーンが見つからない場合にのみ表示されます。例えば、ユーザーが未認証の場合や、属性がいかなるパーソナライズ条件にも合致しない場合などが該当します。
- 「次へ」をクリックします。
- 報酬チェーンの有効期間を指定します。
- 時間制限を設定するトグルをオンにすると、報酬チェーンの有効期限(日付および時刻)を設定できます。
- 報酬チェーン終了後にユーザーの進捗を自動的にリセットするには、チェーン終了後にユーザーの進捗を更新するチェックボックスを選択してください。
- 特定の日時にリワードチェーンを更新したい場合は、「報酬チェーンを更新可能にする」トグルを「オン」にし、更新モードを指定してください。

- 「作成」をクリックします。
- パブリッシャーアカウントのプロジェクトで、LiveOpsツール > 報酬セクションに移動します。
- 対象となるチェーンの行にある「•••」をクリックし、ドロップダウンリストからアクティブ化を選択します。
API経由のセットアップ
報酬システムを管理するには、「報酬チェーンと価値ポイント」メソッドグループの管理者サブセクションのメソッドを使用できます。
| タスク | APIコール |
|---|---|
| 報酬を獲得するためのバリューポイントを作成します。 | バリューポイントを作成する。 |
| バリューポイントを特定のアイテムに割り当てます。 | アイテムにバリューポイントを設定する。ユーザーはアイテムの購入後に、これらのポイントを受け取ります。 |
| 報酬チェーンを作成します。 | 報酬チェーンを作成する。 |
| パーソナライズされた報酬チェーンを作成します。 | 報酬チェーンを作成する。表示条件をattribute_conditions配列に渡してください。 |
| 条件で定義された属性を持たないユーザーに対して、パーソナライズされた報酬チェーンを表示するかどうかを設定します。 | 報酬チェーンを作成する。can_be_missingパラメータでtrueを渡します。 |
| 一致するパーソナライズ済みチェーンが見つからない場合に、ユーザーに表示される報酬チェーンを定義します。 | 報酬チェーンを作成する。is_always_visibleパラメータでfalseを渡します。 |
| 報酬チェーンをアクティブ化/非アクティブ化します。 | 報酬チェーンを作成する。 |
| 報酬チェーンを削除します。 | 報酬チェーンを削除する。 |
| 報酬チェーンにおける、全ユーザーのバリューポイントと進捗状況をリセットします。 | 報酬チェーンをリセットする。リセット後、報酬チェーンの有効期間を更新することで、ユーザーは再び進捗を進めることが可能になります。 |
報酬システムの表示
サイトビルダー経由での表示
報酬システムが正しく機能するためには、ユーザー認証を設定する必要があります。未認証のユーザーの場合、個別およびクラン向けの報酬チェーンの両方が進行状況なしで表示されます。クランに所属していない認証済みユーザーは、個別の報酬チェーンのみが表示されます。クラン向けの報酬チェーンは利用不可として表示されます。


サイト上に報酬チェーンを表示するには:
- パブリッシャーアカウントのプロジェクトで、ストアフロント > ウェブサイトセクションに移動します。
- 対象サイトを選択し、「サイトビルダーを開く」をクリックします。
- ビルダーのメインエリアで、新しいブロックを追加したい場所を選び、「ブロックを追加」をクリックします。
- ブロックリストで「報酬システム」を選択します。
- ドロップダウンリストから、報酬チェーンを選択します。

- ボタンとテキストの色をカスタマイズできます(任意)。
- チェーンをプレビューするには、ビルダーの右上隅にある「プレビュー」をクリックしてください。

- 変更を適用するには、サイトを公開します:
- サイトビルダーの右上隅で「公開」をクリックします。
- 公開したいページ名の横にあるチェックボックスをオンにします。
- 「公開」をクリックします。
- ビルダー内に空のセクション(赤い点でマークされた部分)はありません。
- エクソーラとのライセンス契約が締結締結されました。
- メインページが公開済みであるか、公開対象として選択されていること。メインページが公開される前に、子ページを公開することはできません。
サイトビルダーでのバリューポイント表示詳細
単一のブロック内で複数の報酬チェーンを選択し、それらを縦に並べて表示するか、タブで表示するかを選択できます。各報酬チェーンの外観は個別にカスタマイズ可能です。
アイテムカードには、サイトに追加された報酬チェーンのバリューポイントのみが表示されます。ただし、ユーザーがアイテムを購入すると、クランメンバーはサイトに表示されているかどうかにかかわらず、すべてのアクティブな報酬チェーンのバリューポイントを受け取ります。
例:
現在、2つの報酬チェーンが設定されています:1つは個別の報酬チェーンで、
アイテムカタログには、
ビルダー内でストアブロックを追加し、
- サイトに報酬チェーンが追加されていない場合、
Sword アイテムにはバリューポイントは表示されません。 - 個別の報酬チェーンのみが追加されアクティブになっている場合、
Sword アイテムにはCrystals が20個だけ表示されます。 - クラン用報酬チェーンのみが追加されアクティブになっている場合、
Sword アイテムにはMagic Bubbles が40個だけ表示されます。 - 個別およびクラン向けの報酬チェーンの両方がサイトに追加され、有効になっている場合、
Sword アイテムにはCrystals 20個とMagic Bubbles 40個の両方が表示されます。
クランメンバーには、40個の
クランに所属していないユーザーには、40個の
APIコール経由での報酬チェーン表示
- アプリケーションのUIに、報酬チェーンのステップを表示するための要素を実装します。
- 報酬チェーンとバリューポイントグループにある以下のクライアントサイドAPIコールを使用して、チェーンを操作するためのロジックを実装してください:
| タスク | APIコール |
|---|---|
| 現在のユーザーの報酬チェーンを取得します。 | 現在のユーザーの報酬チェーンを取得する。 |
| 現在のユーザーのバリューポイント残高を取得します。 | 現在のユーザーのバリューポイント残高を取得する。 |
| 現在のユーザーが到達した報酬チェーンのステップ報酬を受け取ります。 | ステップ報酬を請求する。 |
| ユーザー属性による現在のユーザーのクランを更新します。 | 現在のユーザーのクランを更新する。旧クランでの未受取報酬をすべて自動的に請求し応答に含めます。 |
| 現在のユーザーが所属するクランにおいて、特定の報酬チェーンに対する上位10名の貢献者リストを取得します。 | クラン内の報酬チェーンにおける上位10名の貢献者を取得する。ユーザーがクランに所属していない場合、このAPIコールは空の配列を返します。 |
- アイテムがユーザーに正しく付与されていることを確認してください。
ユーザークランのセットアップ
サイトビルダーを使用していない場合は、クラン報酬チェーンが正しく機能するように、エクソーラログインのユーザー属性において、ユーザーのクラン情報を渡す必要があります。
ログインの属性スキームの例:- json
1{
2 "$schema": "https://json-schema.org/draft/2020-12/schema",
3 "additionalProperties": false,
4 "description": "JSON Schema example for user attributes. Not the actual schema.",
5 "properties": {
6
7 "clan_id": {
8 "description": "name of clan",
9 "type": "string"
10 },
11 "custom-id": {
12 "description": "custom-id of a user.",
13 "type": "number"
14 },
15 "had_ban": {
16 "description": "Whether the user was banned.",
17 "type": "boolean"
18 },
19 "last_purchase": {
20 "description": "Date of user's last purchase.",
21 "type": "string"
22 },
23 },
24 "required": [],
25 "title": "Example",
26 "type": "object"
27}
clan_id属性を追加または更新するには、属性更新メソッドを使用し、リクエスト本文のattributes配列内にクランの値としてclan_idを含めて渡してください。
- json
1{
2 "user": {
3 "id": "1234567890",
4 "picture": "https://example.com",
5 "name": "test-name"
6 },
7 "attributes": [
8 {
9 "key": "clan_id",
10 "value": "beetles"
11 }
12 ]
13}
エクソーラログインによる認証を使用している場合は、現在のユーザーのクランを更新するAPIを呼び出して、ユーザーのクラン情報を更新してください。属性に新しいクランが含まれている場合、ユーザーは以前のクランの報酬チェーンから未請求の報酬を受け取り、クランの所属情報が更新されます。ユーザーが以前クランのメンバーであったが、現在は所属していない場合、そのクランメンバーシップは取り消されます。このメソッドからの応答には、ユーザーがすでに請求した報酬が含まれます。
ウェブショップ向けの表示詳細設定
属性スキーマを設定した後、ユーザーのクランデータを渡す処理を実装します。
ユーザーIDで認証する場合は、認証時にウェブショップでのユーザー検証ウェブフックのウェブフックへの応答で以下のようにユーザーのクラン情報を渡します:
clan_id属性を追加または更新するには、clan_id属性キーを持つattributesオブジェクトの配列を渡します。
ウェブフック応答の例:
- json
1{
2 "user": {
3 "id": "1234567890",
4 "picture": "https://example.com",
5 "name": "test-name"
6 },
7 "attributes": [
8 {
9 "key": "clan_id",
10 "value": "beetles"
11 }
12 ]
13}
- ユーザーがクランを脱退し、別のクランに加入していない場合は、
clan_idの値をremoving_keysフィールドに渡す必要があります。
ウェブフック応答の例:
- json
1{
2 "user": {
3 "id": "1234567890",
4 "picture": "https://example.com",
5 "name": "test-name"
6 },
7 "removing_keys": [
8 {
9 "key": "clan_id"
10 }
11 ]
12}
API経由での表示詳細設定
カスタムID経由での認証するAPIを使用している場合は、ユーザー認証時に現在の属性値を直接渡すことができます。
誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。