> For the complete documentation index, see [llms.txt](/llms.txt)

# GS2-Buff API リファレンス

バフ




各種マイクロサービスの対価や報酬の量、ユーザーデータの最大値に関する補正値を一元管理する機能を提供します。

各マイクロサービスはバフを実装可能なフィールドを持ち、バフを適用することでそのフィールドの値を補正することができます。<br>
GS2-Buff は各マイクロサービスのどのエントリーに対してバフをどの程度適用するかを管理します。

バフの適用量は BuffEntryModel で管理し、特定のエントリーに対して複数の BuffEntryModel を関連づけることが可能です。<br>
BuffEntryModel の適用順番は BuffEntryModel の priority で管理し、priority の値が小さいほど優先度が高くなります。

バフの適用方式は3種類存在し「Rate Add」、「Mul」と「Value Add」があります。<br>
Rate Add はバフの適用レートに加算する命令、Mul はバフの適用レートに乗算する命令です。<br>
Value Add はバフの補正計算後の値に加算を行う命令です。<br>
たとえば、デフォルトのレートが 1.0 で、Rate Add 0.2 と設定するとバフの適用レートは 1.2 になります。<br>
Mul 0.5 と設定するとバフの適用レートは 0.5 倍になります。

BuffEntryModel には GS2-Schedule のイベントを関連づけることができ、イベントの開催期間中のみバフを適用するような設定も可能です。

バフがかかっている状態は 「コンテキストスタック」 というGS2の各APIがもつフィールドを使って適用します。<br>
GS2-Buff はバフの適用状態を格納した「コンテキストスタック」を応答し、各マイクロサービスはその「コンテキストスタック」を参照してバフを適用します。<br>
各マイクロサービスのAPIはコンテキストスタックを受け取るインターフェースを持っており、バフを適用する際にはコンテキストスタックを渡すことでバフを適用することができます。

マスターデータの取得のような一見静的なAPIでもバフは適用され、応答内容はバフがかかった前提の値を応答します。<br>
バフがかかっていない状態の値を取得したい場合はコンテキストスタックを未指定の状態でAPIを呼び出すことで取得できます。

[マイクロサービス紹介 / GS2-Buff](../../microservices/buff)



- [GS2-Buff Deploy/CDK リファレンス](/ja/api_reference/buff/deploy/)
  
- [GS2-Buff SDK API リファレンス](/ja/api_reference/buff/sdk/)
  
- [GS2-Buff SDK for Game Engine API リファレンス](/ja/api_reference/buff/game_engine/)
  
- [GS2-Buff スクリプト トリガー リファレンス](/ja/api_reference/buff/script/)
  
- [GS2-Buff マスターデータリファレンス](/ja/api_reference/buff/master_data/)
  
