logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class CharacterConfigSO

    ScriptableObject authoring asset for character archetype configuration. Implements ICharacterConfig so upper layers can depend on the Application-layer interface instead of this concrete Infrastructure type. Contains Unity-specific authoring data (prefab, death window) alongside fields that map to the Business CharacterConfig.

    Must carry the Addressables label type:character (CHARACTER) to be discovered at runtime by UnityCharacterInstaller.

    Inheritance
    object
    CharacterConfigSO
    Implements
    ICharacterConfig
    IFoundationSettings
    Namespace: Serenity.Character.Infrastructure.Settings
    Assembly: Serenity.UnityCharacter.Infrastructure.dll
    Syntax
    public class CharacterConfigSO : ScriptableObject, ICharacterConfig, IFoundationSettings

    Constructors

    CharacterConfigSO()

    Declaration
    public CharacterConfigSO()

    Fields

    Guid

    Declaration
    public string Guid
    Field Value
    Type Description
    string

    GUID for this character config asset.

    Id

    Declaration
    public string Id
    Field Value
    Type Description
    string

    Unique identifier for this character config asset.

    Properties

    AddsTimePerHit

    Whether hitting this character adds time to the countdown.

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

    AttackDelay

    Declaration
    public float AttackDelay { get; }
    Property Value
    Type Description
    float

    BonusTimeOnHit

    Declaration
    public float BonusTimeOnHit { get; }
    Property Value
    Type Description
    float

    CanBeHitDuringDeath

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

    Damage

    Damage dealt to the player per hit.

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

    DeathWindowSeconds

    Time window during which the character can still receive hits after death.

    Declaration
    public float DeathWindowSeconds { get; }
    Property Value
    Type Description
    float

    HitBufferCost

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

    MaxHealth

    Maximum hit points before death.

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

    MissChance

    Declaration
    public float MissChance { get; }
    Property Value
    Type Description
    float

    MoveSpeed

    Movement speed (units/second).

    Declaration
    public float MoveSpeed { get; }
    Property Value
    Type Description
    float

    Name

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

    Prefab

    Prefab used to instantiate this character in the scene.

    Declaration
    public GameObject Prefab { get; }
    Property Value
    Type Description
    GameObject

    ScoreValue

    Score awarded to the player on kill.

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

    TimeRewardPerHit

    Seconds added to countdown per hit.

    Declaration
    public float TimeRewardPerHit { get; }
    Property Value
    Type Description
    float

    Implements

    ICharacterConfig
    IFoundationSettings
    In this article
    © 2026 Serenity. All Rights Reserved