logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Interface IAchievementSettings

    Engine-agnostic read model for achievement configuration.

    Namespace: Serenity.Achievements.Application.Interfaces
    Assembly: Serenity.Achievements.Application.dll
    Syntax
    public interface IAchievementSettings

    Properties

    CaptureScreenshotOnUnlock

    Whether an unlock captures a screenshot in the background.

    Declaration
    bool CaptureScreenshotOnUnlock { get; }
    Property Value
    Type Description
    bool

    ClearPlatformOnReset

    Whether resetting achievements also wipes the player's platform account. Off by default: a local debug reset must not silently revoke trophies the player earned, and on most storefronts the call is irreversible.

    Declaration
    bool ClearPlatformOnReset { get; }
    Property Value
    Type Description
    bool

    IdentitySource

    Where the player identity achievements are keyed by comes from. Achievements are account-level, so a project that signs a player in reads the same setting the Leaderboard does, from the shared kernel.

    Declaration
    PlayerIdentitySource IdentitySource { get; }
    Property Value
    Type Description
    PlayerIdentitySource

    PlatformCallTimeoutSeconds

    How long a single platform gateway call may take before it is abandoned, in seconds. Zero or less disables the timeout. A storefront SDK that never returns would otherwise hold up boot, because the load path awaits it.

    Declaration
    double PlatformCallTimeoutSeconds { get; }
    Property Value
    Type Description
    double

    PlatformProgressPushStepPercent

    How much normalized progress has to accumulate before the next platform progress push, as a percentage. Ten means "push at most once every ten percent". Zero or less pushes on every change.

    Declaration
    int PlatformProgressPushStepPercent { get; }
    Property Value
    Type Description
    int

    PlatformSyncRetrySeconds

    Seconds between platform-sync retries while the storefront is unreachable. The runner doubles this on every failed attempt, up to eight times, and snaps back on success. Zero or less switches the retry off.

    Declaration
    double PlatformSyncRetrySeconds { get; }
    Property Value
    Type Description
    double

    PointsScoreKey

    The Score metric that mirrors the total achievement points. Blank disables the mirror; unlock records stay the source of truth either way.

    Declaration
    string PointsScoreKey { get; }
    Property Value
    Type Description
    string

    ScreenshotMaxWidth

    The width a captured screenshot is downscaled to before it is encoded, in pixels.

    Declaration
    int ScreenshotMaxWidth { get; }
    Property Value
    Type Description
    int

    ShowToastOnUnlock

    Whether an unlock raises a toast notification.

    Declaration
    bool ShowToastOnUnlock { get; }
    Property Value
    Type Description
    bool

    SignalOnReconciledUnlock

    Whether an unlock that was mirrored in from a platform account raises the same signal a fresh unlock does. Off by default, so reinstalling a game does not replay every toast.

    Declaration
    bool SignalOnReconciledUnlock { get; }
    Property Value
    Type Description
    bool
    In this article
    © 2026 Serenity. All Rights Reserved