logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Namespace Serenity.Global.Domain.Enums

    Enums

    FoundationReferenceKind

    What kind of value a FoundationReferenceContract's property stores: a Serenity Id, a Guid, or the owning asset's own Id (a self-reference, e.g. UiOption.ViewId naming the menu it is authored on).

    FoundationReferenceSelector

    Which run-time condition on the owning asset decides whether a FoundationReferenceContract row applies to a given element — most rows always apply, but a shared shape like UiOption stores several mutually-exclusive kinds of reference in the same fields, distinguished only by another field's value at read time.

    FoundationReferenceShape

    How a FoundationReferenceContract's stored value must be interpreted when it is read or rewritten — most references are a plain foreign key, but a few need special handling.

    GameSessionMode

    Enumeration representing the game session mode.

    LogVerbosity

    Enum representing the verbosity levels for logging.

    PlayerIdentitySource

    Defines where a player's identity comes from, for every module that keys data by player.

    RequirementSeverity

    Enum representing how critical a missing field reference is for the running game.

    SerenityAssetLoadingMode

    Selects how Serenity discovers and loads runtime assets such as module definitions, audio clips and prefabs. The mode is global to the running application and is consumed by the asset utilities, the audio-mixer cache, the bootstrap installer, and any future Serenity loader that may differ between Addressables and Resources backends.

    This Slice A introduces the enum as foundation only. No runtime loader behaviour changes in this slice; subsequent slices wire the mode into UnityAssetUtils, AudioMixerDependencyCache, and the editor exporter.

    Underlying values are pinned. AddressablesWithResourcesFallback is explicitly 0 so that any existing scene/prefab whose UnitySerenityInstaller was serialized before this field existed deserializes the missing field as Unity's default integer 0 — i.e. as the safe legacy behaviour. The C# field initializer on UnitySerenityInstaller.AssetLoadingMode also picks AddressablesWithResourcesFallback, but the explicit underlying value is what protects already-saved assets.

    The default in Serenity.Global.Infrastructure.Settings.SerenityAssetLoadingModeProvider is also AddressablesWithResourcesFallback so existing projects that do not opt in keep the exact behaviour they had before the mode existed.

    Stability contract. Once shipped, these integer values must not be changed: any already-serialized asset relies on them. New modes must use the next unused integer, never renumber existing ones.

    In this article
    © 2026 Serenity. All Rights Reserved