Skip to content

Configuration & CVars ​

This document details all Project Settings, configuration parameters, and console commands available in Aegis Save.


1. Project Settings (UAegisSettings) ​

Access configuration in Unreal Editor under Edit → Project Settings → Plugins → Aegis Save:

ini
; Config/DefaultEngine.ini
[/Script/AegisSave.AegisSettings]
FrameBudgetMilliseconds=1.000000
DefaultSnapshotMode=Atomic
DefaultSaveDirectory=
BundleTargetSizeBytes=262144
CompressionCodec=Oodle

Parameter Details ​

SettingTypeDefaultDescription
FrameBudgetMillisecondsfloat1.0Maximum Game Thread execution time allowed per frame during an Incremental autosave pass.
DefaultSnapshotModeEAegisSnapshotModeAtomicDefault mode when SaveGame is called without explicit option overrides (Atomic or Incremental).
DefaultSaveDirectoryFDirectoryPath"" (Empty)Custom save directory path. If left empty, defaults to the project's standard Saved/SaveGames/ directory.
BundleTargetSizeBytesint32262144 (256 KB)Target uncompressed size of grouped data bundles before flushing to Oodle compression. Balances verbatim reuse granularity with compression ratio.
CompressionCodecFNameOodleActive compression algorithm used for payload bundles. Uses Epic's built-in Oodle Kraken compressor.

2. Console Commands & CVars ​

Aegis Save provides built-in console commands for debugging, benchmarking, and diagnostics:

1. Benchmark Execution ​

text
Aegis.Benchmark.Run <Count> <DirtyFraction> <ChurnRate> [Trials] [SweepHalfExtent] [SourceRadius]
  • Executes an automated performance benchmark against the current map.
  • Slices capture passes, measures baseline controls vs active saving, and outputs structured p99 and tail delta metrics (AEGIS_BENCHMARK_RESULT).
  • Example: Aegis.Benchmark.Run 1000 0.02 1.0 2

2. Hand-Placed Identity Probe ​

text
Aegis.HandPlaced.Probe <ExpectedCount>
  • Validates that hand-placed actors in the current level successfully recover their adopted PersistentId with bit-exact matching.
  • Essential for testing cooked standalone game builds where actorGuid=N/A.

3. Level Instance Identity Probes ​

text
Aegis.LevelInstance.Probe <ExpectedCount>
Aegis.LevelInstance.StreamCycle <Cycles> <ExpectedCount>
  • Validates that Level Instance actors compose unique identities across placement seeds and survive streaming cycles without identity drift.

4. World Partition Re-Partitioning Probes ​

text
Aegis.Repartition.SaveRecords <Count> <SaveName>
Aegis.Repartition.VerifyRecords <Count> <SaveName>
  • Validates that save records can be resolved after spatial grid cell sizes have been modified.

3. Configuring Logging Categories ​

Aegis uses dedicated logging categories rather than generic output:

  • LogAegis: Subsystem operations, save/load lifecycle, scheduler warnings, and error contexts.
  • LogAegisSerialization: Low-level archive property serialization, bundle packing, and codec metrics.

Enabling Verbose Diagnostics via Command Line ​

Add the -LogCmds parameter to your editor or game launch arguments:

powershell
UnrealEditor.exe YourProject.uproject -LogCmds="LogAegis Verbose, LogAegisSerialization VeryVerbose"

Every warning and error strictly names: Object, Property, and Reason (A-7).

Aegis Save — Enterprise World Persistence for Unreal Engine 5.