logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class AchievementManifestRow

    One achievement as a manifest exporter sees it: its identity, what the storefront listing shows, what it awards, the identifier it is mirrored under on each storefront, and whether it is fit to export at all.

    Inheritance
    object
    AchievementManifestRow
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    Namespace: Serenity.Achievements.Application.Authoring
    Assembly: Serenity.Achievements.Application.dll
    Syntax
    public sealed class AchievementManifestRow
    Remarks

    A row rather than AchievementAuthoringSnapshot, because the two answer different questions. The snapshot exists for the authoring rules, so it carries the unlock condition and a HasIcon flag and no progress target; a manifest carries the progress target and the trophy grade and has no use at all for a condition tree. Exporting from the snapshot would mean widening it with fields no rule reads, and handing the exporter a graph it has no business walking.

    Constructors

    AchievementManifestRow(Fields)

    Creates a manifest row.

    Declaration
    public AchievementManifestRow(AchievementManifestRow.Fields fields)
    Parameters
    Type Name Description
    AchievementManifestRow.Fields fields

    The values to build it from.

    Exceptions
    Type Condition
    ArgumentNullException

    When no fields were given.

    Properties

    DescriptionKey

    Declaration
    public string DescriptionKey { get; }
    Property Value
    Type Description
    string

    The description, or the localization key standing for it.

    EpicAchievementId

    Declaration
    public string EpicAchievementId { get; }
    Property Value
    Type Description
    string

    The Epic identifier, or empty when it is not mirrored to Epic.

    HasAuthoringErrors

    Declaration
    public bool HasAuthoringErrors { get; }
    Property Value
    Type Description
    bool

    Whether the authoring rules found something that stops this achievement working. Such a row reaches no manifest: an id that unlocks nothing, or awards negative points, is not a row a storefront should be told about.

    Id

    Declaration
    public string Id { get; }
    Property Value
    Type Description
    string

    The achievement's authored id.

    IsHidden

    Declaration
    public bool IsHidden { get; }
    Property Value
    Type Description
    bool

    Whether the achievement stays concealed until unlocked.

    NameKey

    Declaration
    public string NameKey { get; }
    Property Value
    Type Description
    string

    The display name, or the localization key standing for it.

    Points

    Declaration
    public int Points { get; }
    Property Value
    Type Description
    int

    The points the unlock awards.

    ProgressTarget

    Declaration
    public long ProgressTarget { get; }
    Property Value
    Type Description
    long

    The progress numerator that unlocks it. Zero is a single-step unlock.

    PsnTrophyId

    Declaration
    public string PsnTrophyId { get; }
    Property Value
    Type Description
    string

    The PlayStation trophy identifier, or empty when it is not mirrored there.

    SteamApiName

    Declaration
    public string SteamApiName { get; }
    Property Value
    Type Description
    string

    The Steamworks API name, or empty when it is not mirrored to Steam.

    TrophyGrade

    Declaration
    public TrophyGrade TrophyGrade { get; }
    Property Value
    Type Description
    TrophyGrade

    The trophy tier tiered storefronts award.

    XboxAchievementId

    Declaration
    public string XboxAchievementId { get; }
    Property Value
    Type Description
    string

    The Xbox identifier, or empty when it is not mirrored to Xbox.

    Methods

    IdentifierFor(AchievementPlatformKind)

    The identifier this row carries for one storefront, or empty when it carries none.

    Declaration
    public string IdentifierFor(AchievementPlatformKind platform)
    Parameters
    Type Name Description
    AchievementPlatformKind platform

    The storefront to read.

    Returns
    Type Description
    string

    The identifier.

    In this article
    © 2026 Serenity. All Rights Reserved