GS2-Mission のカウンターを特定のスコープの値だけリセットする機能が追加されました – GS2 Blog


この更新は2025年1月30日の更新内容です

はじめに

GS2-Mission はデイリーミッションやウィークリーミッション、実績といった機能を実現するマイクロサービスです。

機能追加の背景

GS2-Mission のカウンターはスコープという概念を持ち、1つのカウンターに複数の切り口での値を保持することができます。

たとえば「クエストをクリアした回数」というカウンターがあった時、カウンターの値は
「毎日0時にリセットされるカウンター値」「毎週月曜日0時にリセットされるカウンター値」「イベントAの開催期間のみカウントアップされるカウンター値」「累積のカウントアップ値」というように複数の値を持つことが可能で、ミッションタスクは各スコープを達成判定に利用できます。

これまでは、このカウンター値をリセットするときは全てのスコープの値をリセットする形でしか利用することができませんでした。

追加された機能の詳細

スコープを指定してカウンター値をリセットする機能が追加されました。

    var result = await gs2.Mission.Namespace(
        namespaceName: "namespace-0001"
    ).Me(
        gameSession: GameSession
    ).Counter(
        counterName: "counter-0001"
    ).ResetCounterAsync(
        new EzScopedValue[] {
            new EzScopedValue()
                .WithResetType("daily"),
            new EzScopedValue()
                .WithResetType("weekly"),
        }
    );




元の記事を確認する

関連記事