logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class SerenityBootFailureReporter

    The one surface a boot that did not go cleanly reaches the player and the game code through. Deliberately depends on nothing Serenity installs: the failure may BE the UI system's own install, so this uses only UnityEngine.Debug and a bare UnityEngine.GameObject it creates itself.

    Both verdicts are reported. A HALTED boot stopped and nothing after the failing task ran. A DEGRADED boot reached a playable game with the optional subsystems whose install tasks failed missing. Every build raises BootCompletedWithFailures with the outcome — a consumer reads Halted to tell them apart — and writes one error log naming each failed task. The Editor and development builds additionally get UnityBootFailureOverlayComponent: blocking for a halt, a non-blocking notice for a degraded boot, because there is no console to read on a device.

    Inheritance
    object
    SerenityBootFailureReporter
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.InitializationPipeline.Infrastructure.BootFailure
    Assembly: Serenity.UnityInitializationPipeline.Infrastructure.dll
    Syntax
    public static class SerenityBootFailureReporter

    Methods

    Describe(InitializationPipelineOutcome)

    The one sentence both the log and the overlay carry, for either verdict.

    Declaration
    public static string Describe(InitializationPipelineOutcome outcome)
    Parameters
    Type Name Description
    InitializationPipelineOutcome outcome
    Returns
    Type Description
    string

    Report(InitializationPipelineOutcome)

    Reports outcome when it halted or degraded; a clean boot reports nothing.

    Declaration
    public static void Report(InitializationPipelineOutcome outcome)
    Parameters
    Type Name Description
    InitializationPipelineOutcome outcome

    Events

    BootCompletedWithFailures

    Raised once per boot that halted OR degraded, in every build. A game subscribes to show its own error screen, submit a report, or quit, reading Halted on the outcome to tell the two apart; an unsubscribed game still gets the log and, outside release, the overlay.

    Declaration
    public static event Action<InitializationPipelineOutcome> BootCompletedWithFailures
    Event Type
    Type Description
    Action<InitializationPipelineOutcome>
    In this article
    © 2026 Serenity. All Rights Reserved