Steam アプリ内課金を設定する
注釈:本資料はAI技術を用いて翻訳されています。
概要
アプリ内課金のためにゲームクライアントを変更する必要はありません。AGS 側では、Steam IAP 設定で両方のアプリを設定し、IAP アイテムマッピングに注意してください。IAP アイテムマッピングを設定するを参照してください。
アプリ内課金の概要については、サードパーティアプリ内課金の概要を参照してください。
両方のアプリに Steam IAP を設定する
Steam IAP をまだ設定していない場合は、先にサードパーティストア統合を管理するの手順に従ってください。
- Admin Portal
- AGS CLI
-
AGS Admin Portal で、ゲームネームスペースに移動します。
-
3rd Party Store > Steam に移動します。
-
Enable Steam multi app IDs を選択します。2 つ目のアプリの行が表示されます。
-
各行に App ID と Name を入力します。追加できるアプリは最大 2 つです。
1 行目がデフォルトのアプリです。デフォルトを変更するには、行の順序を入れ替えます。
-
Sync Mode と Environment を設定します。
備考Steam Transaction モードでは、Environment は両方のアプリに適用されるため、一方のアプリを
LIVE、もう一方をSANDBOXで運用することはできません。 -
Save をクリックします。
Steam IAP 設定と Steam ログイン方式で Steam 複数アプリの設定が一致していない場合、ページにログイン方式の設定へのリンクを含む通知が表示されます。両方の設定を同じにしてください。
-
設定内容を記述した JSON ファイルを作成します。この例では
steam-iap.jsonを使用します。{
"appId": "<FirstSteamAppId>",
"enableMultipleAppIds": true,
"appIds": ["<FirstSteamAppId>", "<SecondSteamAppId>"],
"publisherAuthenticationKey": "<YourSteamWebApiKey>",
"syncMode": "TRANSACTION",
"env": "LIVE"
}appId: 1 つ目のアプリで、デフォルトのアプリでもあります。appIdsのエントリのいずれかである必要があります。appIds: このネームスペースで許可される Steam App ID です。重複は指定できません。すべての App ID は、お使いの Steam パブリッシャーアカウントに属している必要があります。publisherAuthenticationKey: 必須です。Steamworks Portal で取得した Steam Publisher Web API Key です。両方のアプリで共有されます。syncMode: ゲームで使用する同期モードに応じて、INVENTORYまたはTRANSACTIONを指定します。両方のアプリで共有されます。env:LIVEまたはSANDBOXです。両方のアプリで共有されます。syncModeがTRANSACTIONの場合は必須です。INVENTORYの場合は削除してください。
-
設定を保存します。
ags platform iap-steam update-config --namespace <YourNamespace> --json @steam-iap.json -
steam-iap.jsonには Steam Web API Key が含まれているため、削除します。
2 つの Steam アプリでの IAP 同期モード
- Inventory モード: ゲームクライアントからの同期リクエストには、以前のバージョンの AGS SDK を含め、これまで常に App ID が含まれています。AGS は、設定済みのアプリのいずれかに該当する App ID のみを受け付けます。ゲームクライアントの変更は不要です。
- Transaction モード: AGS はアプリごとに Steam のトランザクション(注文)をポーリングし、アプリごとに個別の同期位置を管理します。ゲームクライアントの変更は不要です。
IAP アイテムマッピングを設定する
Admin Portal または JSON ファイルを使用してアイテムマッピングを追加する方法については、消耗品を設定して販売するを参照してください。
AGS は、Steam のアイテム定義 ID(itemdef)によって、Steam での購入を AGS のアイテムにマッピングします。
- アイテムマッピングには App ID のコンテキストがありません。 アプリごとのマッピングはありません。AGS は、購入がどのアプリから行われたかにかかわらず、アイテム定義 ID のみで照合します。
- Steam アイテム定義 ID は、ネームスペース内で 1 回のみマッピングできます。 マッピングに App ID が含まれないため、同じ ID で 2 つ目のマッピングを追加すると、AGS は重複として扱い、拒否します。1 つの ID を、アプリごとに異なる 2 つの AGS アイテムにマッピングすることはできません。
- AGS は、マッピングを保存する際に Steam カタログを確認しません。 Steam アプリごとに独自のカタログがあるため、2 つのアプリが同じアイテム定義 ID を異なる商品に使用している場合があります。AGS はカタログを比較しないため、このような状況になっても警告できません。
これらの制限事項があるため、Steam 複数アプリを有効にする場合は、アプリ間で 1 つのアイテム定義 ID を 2 つの異なる商品に使用しないでください。 そうしないと、AGS が誤ったアイテムを付与する可能性があります。
以下の例では、アプリ A とアプリ B の 2 つのアプリを使用します。
- 同じ ID、同じ商品(動作します)
- 異なる ID、同じ商品(動作します)
- 同じ ID、異なる商品(動作しません)
App A · itemdef 100 = sword
App B · itemdef 100 = sword
STEAM 100 から sword への 1 つのマッピングで、両方のアプリに対応できます。
App A · itemdef 100 = sword
App B · itemdef 777 = sword
同じ AGS アイテムに対して、ID ごとに 1 つずつ、合計 2 つのマッピングを追加します。
App A · itemdef 100 = sword
App B · itemdef 100 = armor
アイテムマッピングでは、このケースを表現できません。AGS は STEAM 100 に対する 2 つ目のマッピングを重複として拒否するため、この ID を使用できる AGS アイテムは 1 つだけになり、AGS は 2 つのアプリを区別できません。アプリ B の購入者は、armor ではなく sword を受け取り、エラーも発生しません。