What shipped in each Scylla Core release, from the initial framework foundation that landed at 1.0.0 down through every fix that follows.
Release notes for Scylla Core, the foundational module that every other Scylla module depends on. Versions are listed newest at the top; each entry groups its bullets under Added, Removed, Changed, and Fixed. Core follows its own semver line, independent of the other modules in the framework.
1.1.0
Scene management joins the Core subsystems: framework persistence across scene loads plus a managed loading pipeline.
Added
- Scene management subsystem (
ScyllaSceneManager), initialized by the Bootstrap alongside Time and the event bus. Keeps the bootstrap hierarchy alive across scene changes viaDontDestroyOnLoadand deduplicates per-scene bootstraps automatically, so every scene stays playable directly from the Editor. - Managed asynchronous scene loading:
LoadSceneAsync(by name or build index),ReloadActiveSceneAsync, andUnloadSceneAsyncreturn aSceneLoadOperationwith progress, state, aCompletedevent, and anAwaitable. A synchronousLoadScenefallback is included. - Activation gate and minimum load duration for loading screens:
WithManualActivation()holds the load at 90% until code opens the gate;WithMinDuration(seconds)(or the config default) keeps fast loads from flashing. - Transition hygiene before destructive scene changes: active tweens are killed, the timescale-modifier stack is cleared, and destroyed event-bus subscribers are pruned. Each step is a configuration toggle with a per-call
HygieneOverride. - Transition tasks:
RegisterPreLoadTask/RegisterPostLoadTaskaccept awaitable hooks that the pipeline waits for (autosaves, fades, warm-ups). - Six typed scene events on the event bus: will-load, loaded, will-unload, unloaded, active-scene-changed, and throttled load progress.
- Addressables scene routing (when the Addressables package is installed):
LoadAddressableSceneAsyncby address key orAssetReference, through the same pipeline; unloads route back through Addressables automatically. ScyllaSceneConfigurationasset with a custom inspector, a Scene Configuration slot on the Bootstrap inspector, and Setup Wizard integration.PruneInvalidSubscribers()on the event bus, removing subscriptions whose Unity objects have been destroyed.- SceneManager demo: a hub scene exercising single, additive, gated, and addressable loads with a live status overlay and scene event log.
Changed
- The bootstrap hierarchy now persists across scene loads by default (
PersistFrameworkAcrossScenes, on by default). A scene that carries its own bootstrap no longer logs an error in a running session; the duplicate is removed in favor of the persistent instance.
1.0.0
The initial release of Scylla Core, the foundational module of the Scylla framework.
Added
- Bootstrap and module manager: a scene-level
ScyllaBootstrapcomponent plus theScyllaCoresingleton andScyllaModuleManagerthat together discover, validate, and drive every module through the framework lifecycle (Discovered, Validated, Initialized, Started, Enabled, Disabled, Shutdown) with fail-fast validation of the dependency graph. - Scylla Event eXchange (SEX) bus, a typed publish-subscribe channel with priority ordering, cancellable propagation, and lifecycle-safe subscription management that cleans up automatically when subscribers are destroyed.
- Dual-layer configuration system: ScriptableObject assets for design-time defaults paired with JSON files for runtime overrides, resolved through a four-tier layered fallback (User Documents, Application, Unity Asset, Defaults) by
ConfigFileManager, and exportable straight from the Inspector via an “Export Config File” button. - Logging subsystem, with module categories, pluggable receivers (Unity console and file system), and uniform formatting across the framework.
- Time subsystem (
ScyllaTime), initialized by the Bootstrap before any module runs, owning framework-aware time, timescale control, and pause behaviour independent ofTime.timeScale. - Utility library, covering math and interpolation, noise (Perlin, OpenSimplex2, Value, ValueCubic, Cellular) with domain warping and curl flows, random (PCG32, Xoshiro256, Mersenne Twister, SplitMix64, Xoroshiro128+) with helpers for dice and IDs, strings and tabular text, files and paths, sprites and fonts, colors and lights and cameras, threading, platform, assemblies, and type helpers.
- Data structures library, with generic and DOTS-compatible queue, priority queue, deque, stack, map, type-map, ring buffer, object pool, trie, quadtree, octree, BVH, KD-tree, bit array, disjoint set, graphs (adjacency list, CSR, grid adapter, algorithms), and grid utilities for hex, square, and triangle layouts.
- First-party types: the
ColorAssetRegistrywithColorPalette,ColorGradient, andColorSwatchCollection; theConfigFilefamily (ConfigFile,ConfigFileGroup,ConfigFileProperty) that backs the JSON configuration tier; and eight strongly-typed unit structs (LengthUnit,MassUnit,TimeUnit,AreaUnit,SpeedUnit,PressureUnit,TemperatureUnit,DataUnit) with conversion properties and validated math. - Serialization, compression, crypto, and checksum stack: a first-party JSON serialization engine with attribute-driven configuration, reference tracking, and type serializers; compression providers for GZip, Deflate, BZip2, and Zip; authenticated encryption via AES-CBC-HMAC, AES-GCM, and ChaCha20-Poly1305 with PBKDF2 key derivation; and non-cryptographic checksums (Adler32, CRC16, CRC32, Fletcher32, XXHash32, XXHash64).
- Tween system, a pooled and easing-aware engine for floats, vectors, colors, and quaternions with sequence composition and one-line extensions for
Transform,Material,AudioSource,CanvasGroup,SpriteRenderer, andRectTransform. - Procedural map generation toolkit: BSP, cellular automata, drunkard walk, maze, maze-with-rooms, room-and-corridor, Voronoi regions, noise threshold, and winding corridor, plus pluggable post-processing for connectivity repair, dead-end removal, room detection, door placement, and spawn points.
- Debug-draw subsystem, runtime visualization for primitives and meshes that works in both edit and play mode and across the Built-in and SRP render pipelines.
- Editor foundation, a UI Toolkit base for the rest of the framework’s editor experience with
ScyllaEditorBasefor custom inspectors,ScyllaToolWindowBasefor windows,ScyllaSchedulerfor safe recurring jobs, a USS token system for theming, and the bundled setup and getting-started wizards.