Rolly Docs

Structures

The structures of Rolly Save: what each member holds and its default.

Sheet
61 of 64
Rev
1.0.0
Updated
On this sheet

RollySave

FRollySaveActorFilter

Rolly Save Actor Filter · #include "Rules/RollySaveActorFilter.h"

Actors by class, interface, tag or map. A Save Rule’s Match and Except use it, and so do the level tools. Matching loads no class: a class that is not in memory has no actors. Every list but Gameplay Tag Query saves with a spawned Reset Area’s snapshot.

Member Type Default Description
Classes TArray<TSoftClassPtr<AActor> > empty Actors of these classes and classes made from them.
Interfaces TArray<TSoftClassPtr<UInterface> > empty Actors whose class implements one of these, in C++ or Class Settings.
Actor Tags TArray<FName> empty Actors with one of these in Details > Actor > Tags, ignoring case. The way to pick out single Blueprint actors.
Gameplay Tags FGameplayTagContainer Actors with one of these gameplay tags or a tag below one: reported through the Gameplay Tag Asset Interface on the actor or a component, such as an Ability System Component, or held in a variable that Project Settings > Plugins > Rolly Save > Gameplay Tag Variables names. Read at each save and load.
Gameplay Tag Query FGameplayTagQuery Actors whose gameplay tags, read as for Gameplay Tags, satisfy this query: for all-of, none-of and exact tests.
Maps TArray<TSoftObjectPtr<UWorld> > empty In Match, only in these maps; in Except, never in them. Not a condition alone: Match still needs a class, interface or tag.

FRollySaveActorOverrides

Rolly Save Actor Overrides · #include "Actor/RollySaveActorSettings.h"

What actors save where it differs from Actor Defaults in Project Settings and from the Save Rules that apply earlier: each value applies only while its tick is set. Not saved: after a load the actor has the values set in the editor.

Member Type Default Description
Override Save Transform bool false Use this Save Transform instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Save Transform bool true Save where the actor is: location, rotation, scale, what it is attached to, and for a pawn the direction its controller faces. A placed actor whose root is not Movable cannot move, so its transform is not saved. A spawned actor always keeps its transform, since it respawns there.
Override Save Visibility bool false Use this Save Visibility instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Save Visibility bool true Save whether the actor is hidden in game, as Set Actor Hidden In Game sets it. Its components’ own visibility is not included.
Override Save Physics Velocity bool false Use this Save Physics Velocity instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Save Physics Velocity bool true Save how fast the actor moves and spins while its root simulates physics, so it keeps moving after a load.
Override Save Movement bool false Use this Save Movement instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Save Movement bool true Save the velocity of the actor’s movement components and a character’s movement mode, such as falling or swimming.
Override Keep Destroyed bool false Use this Keep Destroyed instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Keep Destroyed bool true A placed actor destroyed during play stays destroyed after a load and when the player returns to its level. Off: it comes back as placed. Child actors always come back with their Child Actor Component.
Override Respawn bool false Use this Respawn instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Respawn bool true A spawned actor that saves comes back after a load where it was, with its saved values. Off: it is not saved, for actors your game spawns again itself, such as in Begin Play.
Override Apply Timing bool false Use this Apply Timing instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Apply Timing ERollySaveApplyTiming Before Begin Play Before Begin Play: the actor has its saved values when its Begin Play runs. After Begin Play: they are set once every actor’s Begin Play ran, for actors whose Begin Play would overwrite them. When Asked: they wait until your game calls Apply Saved Values for the actor, for actors that set themselves up later, such as after loading data. Keep Current Map loads set them at once.
Override Saving bool false Use this Saving instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Saving ERollySaveActorSaving With Saved State With Saved State: the actor saves when it or a component has a variable with SaveGame ticked, it has a Rolly Save component, something picks a property for it or attaches a handler that has state to save, it is a level instance whose level is unloaded, swapped or holds saved actors, or what its Instances, Destruction and PCG Values settings save has changed. Always: it saves even without them: what the ticks list and whether it was destroyed; each such actor adds a record to every save. Never: it is left out of saves and loads with its components and child actors, and a destroyed one comes back as placed. A local player’s own controller, pawn and player state follow Local Players in Project Settings.
Override Group bool false Use this Group instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Group FString empty The group Save Game Part to Rolly Slot and Load Game Part from Rolly Slot take this actor with, such as Chapter2, with its components and Save Handlers; a part save of World leaves it out, and whole saves hold it either way. Empty: it saves with the world. 1 to 1,024 characters, compared with capital letters.
Override Instances bool false Use these Instances settings instead of those from Actor Defaults in Project Settings and Save Rules that apply earlier.
Instances FRollySaveInstanceSettings What an actor saves of its instanced meshes, its foliage and the output of its PCG components. Landscape grass, HLODs, Mass crowds and instances that live only on the GPU are never saved.
Override Destruction bool false Use this Destruction instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Destruction ERollySaveDestruction Exact Groups What a load keeps of the actor’s broken geometry collections; an unbroken one saves nothing. Restored pieces fire no break events: use On Rolly Save Loaded or the component’s On Loaded.
Override PCG Values (bOverride_PCGValues) bool false Use this PCG Values instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
PCG Values (PCGValues) ERollySavePCGValues Changed Values Which values of the actor’s PCG components save: Seed, Activated, the graph, overridden graph parameters, and whether an On Demand component was generated.
Override Regenerate PCG (bOverride_PCGRegenerate) bool false Use this Regenerate PCG instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Regenerate PCG (PCGRegenerate) ERollySavePCGRegenerate When Values Changed Whether the actor’s PCG components generate again after a load.
Override Save Physics Sleep bool false Use this Save Physics Sleep instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Save Physics Sleep bool true Save whether a root that simulates physics is asleep, so a crate that came to rest stays at rest after a load instead of settling again. A body that touches a moving one wakes up. Off: it starts as Start Awake on its body says.
Override Save Level Instance State (bOverride_SaveLevelInstance) bool false Use this Save Level Instance State instead of the one from Actor Defaults in Project Settings and Save Rules that apply earlier.
Save Level Instance State (bSaveLevelInstance) bool true For a level instance actor: save whether its level is loaded, so one your game unloaded stays unloaded after a load, and which level it shows, so the saved state of its actors is set only in the level it was saved in. Off: every level instance loads its level after a load. Packed Level Actors and level instances embedded in a World Partition map have no such state.

FRollySaveActorSettings

Rolly Save Actor Settings · #include "Actor/RollySaveActorSettings.h"

What an actor that saves keeps beside its variables with SaveGame ticked: Actor Defaults in Project Settings, and what an actor resolves to once its Save Rules and its Rolly Save component’s overrides are applied.

Member Type Default Description
Save Transform bool true Save where the actor is: location, rotation, scale, what it is attached to, and for a pawn the direction its controller faces. A placed actor whose root is not Movable cannot move, so its transform is not saved. A spawned actor always keeps its transform, since it respawns there.
Save Visibility bool true Save whether the actor is hidden in game, as Set Actor Hidden In Game sets it. Its components’ own visibility is not included.
Save Physics Velocity bool true Save how fast the actor moves and spins while its root simulates physics, so it keeps moving after a load.
Save Movement bool true Save the velocity of the actor’s movement components and a character’s movement mode, such as falling or swimming.
Keep Destroyed bool true A placed actor destroyed during play stays destroyed after a load and when the player returns to its level. Off: it comes back as placed. Child actors always come back with their Child Actor Component.
Respawn bool true A spawned actor that saves comes back after a load where it was, with its saved values. Off: it is not saved, for actors your game spawns again itself, such as in Begin Play.
Apply Timing ERollySaveApplyTiming Before Begin Play Before Begin Play: the actor has its saved values when its Begin Play runs. After Begin Play: they are set once every actor’s Begin Play ran, for actors whose Begin Play would overwrite them. When Asked: they wait until your game calls Apply Saved Values for the actor, for actors that set themselves up later, such as after loading data. Keep Current Map loads set them at once.
Saving ERollySaveActorSaving With Saved State With Saved State: the actor saves when it or a component has a variable with SaveGame ticked, it has a Rolly Save component, something picks a property for it or attaches a handler that has state to save, it is a level instance whose level is unloaded, swapped or holds saved actors, or what its Instances, Destruction and PCG Values settings save has changed. Always: it saves even without them: what the ticks list and whether it was destroyed; each such actor adds a record to every save. Never: it is left out of saves and loads with its components and child actors, and a destroyed one comes back as placed. A local player’s own controller, pawn and player state follow Local Players in Project Settings.
Group FString empty The group Save Game Part to Rolly Slot and Load Game Part from Rolly Slot take this actor with, such as Chapter2, with its components and Save Handlers; a part save of World leaves it out, and whole saves hold it either way. Empty: it saves with the world. 1 to 1,024 characters, compared with capital letters.
Instances FRollySaveInstanceSettings What an actor saves of its instanced meshes, its foliage and the output of its PCG components. Landscape grass, HLODs, Mass crowds and instances that live only on the GPU are never saved.
Destruction ERollySaveDestruction Exact Groups What a load keeps of the actor’s broken geometry collections; an unbroken one saves nothing. Restored pieces fire no break events: use On Rolly Save Loaded or the component’s On Loaded.
PCG Values (PCGValues) ERollySavePCGValues Changed Values Which values of the actor’s PCG components save: Seed, Activated, the graph, overridden graph parameters, and whether an On Demand component was generated.
Regenerate PCG (PCGRegenerate) ERollySavePCGRegenerate When Values Changed Whether the actor’s PCG components generate again after a load.
Save Physics Sleep bool true Save whether a root that simulates physics is asleep, so a crate that came to rest stays at rest after a load instead of settling again. A body that touches a moving one wakes up. Off: it starts as Start Awake on its body says.
Save Level Instance State (bSaveLevelInstance) bool true For a level instance actor: save whether its level is loaded, so one your game unloaded stays unloaded after a load, and which level it shows, so the saved state of its actors is set only in the level it was saved in. Off: every level instance loads its level after a load. Packed Level Actors and level instances embedded in a World Partition map have no such state.

FRollySaveAreaShape

Rolly Save Area Shape · #include "Level/RollySaveResetAreaState.h"

One shape of a Reset Area on an actor spawned during play, as its snapshot keeps it. Its names are written into saves and never change.

FRollySaveBlackboardBool

Rolly Save Blackboard Bool · #include "EngineState/RollySaveBlackboardHandler.h"

A Bool key’s value, as the Blackboard handler saves it.

FRollySaveBlackboardClass

Rolly Save Blackboard Class · #include "EngineState/RollySaveBlackboardHandler.h"

A Class key’s value, as the Blackboard handler saves it.

FRollySaveBlackboardFloat

Rolly Save Blackboard Float · #include "EngineState/RollySaveBlackboardHandler.h"

A Float key’s value, as the Blackboard handler saves it.

FRollySaveBlackboardInt

Rolly Save Blackboard Int · #include "EngineState/RollySaveBlackboardHandler.h"

An Int key’s value, as the Blackboard handler saves it.

FRollySaveBlackboardName

Rolly Save Blackboard Name · #include "EngineState/RollySaveBlackboardHandler.h"

A Name key’s value, or an Enum key’s as its enumerator’s name, as the Blackboard handler saves it.

FRollySaveBlackboardObject

Rolly Save Blackboard Object · #include "EngineState/RollySaveBlackboardHandler.h"

An Object key’s value, as the Blackboard handler saves it: a saved actor by its save ID, an asset as an asset.

FRollySaveBlackboardRotator

Rolly Save Blackboard Rotator · #include "EngineState/RollySaveBlackboardHandler.h"

A Rotator key’s value, as the Blackboard handler saves it.

FRollySaveBlackboardString

Rolly Save Blackboard String · #include "EngineState/RollySaveBlackboardHandler.h"

A String key’s value, as the Blackboard handler saves it.

FRollySaveBlackboardStruct

Rolly Save Blackboard Struct · #include "EngineState/RollySaveBlackboardHandler.h"

A Struct key’s value, as the Blackboard handler saves it.

FRollySaveBlackboardVector

Rolly Save Blackboard Vector · #include "EngineState/RollySaveBlackboardHandler.h"

A Vector key’s value, as the Blackboard handler saves it; an unset key holds the engine’s invalid location.

FRollySaveCheckSeverities

Rolly Save Check Severities · #include "Checks/RollySaveCheckTypes.h"

How each of Rolly Save’s editor checks reports, one row per check. Default follows Rolly Save’s choice, so a row a project never touched follows a later version’s default. Members are only added.

Member Type Default Description
Duplicate Custom Save ID (DuplicateCustomId) ERollySaveCheckSeverity Default Two actors of a map share a Custom Save ID, so both save under their names. Default: Error.
Custom Save ID in a Level Instance (CustomIdInLevelInstance) ERollySaveCheckSeverity Default An actor with a Custom Save ID sits in a level a map embeds more than once as a level instance. Default: Warning.
Struct Members without SaveGame (StructMembersNotSaved) ERollySaveCheckSeverity Default A saved Blueprint struct has members without SaveGame, which are not saved. Default: Warning.
C++ Struct Saved in Part (CppStructPartlySaved) ERollySaveCheckSeverity Default A saved C++ struct has members without SaveGame. Default: Warning.
Property Paths (PathNotApplicable) ERollySaveCheckSeverity Default Saved by Path entries a class lacks, cannot save, applies with a wrong setter or nests too deep, rules matched by tag included. Default: each message’s own, Warning or Error.
Save Rule Ties (RuleTie) ERollySaveCheckSeverity Default Two Save Rules of equal Priority disagree about actors of the map. Default: Warning.
Property GUIDs Not Cooked (CookGuidsOff) ERollySaveCheckSeverity Default A Blueprint with SaveGame variables does not cook property GUIDs, so renaming a variable loses saved values in packaged games. Default: Warning.
Save Transform on a Static Root (StaticRoot) ERollySaveCheckSeverity Default A Save Rule or component saves the transform of actors whose root cannot move. Default: Warning.
Level Tool Setup (LevelToolSetup) ERollySaveCheckSeverity Default Problems of Save Points, Checkpoint, Autosave and Reset Area Volumes and their components, as their Checks rows show. Default: each message’s own.
Actor Setup (ActorSetup) ERollySaveCheckSeverity Default Problems of Rolly Save components and Custom Save IDs. Default: each message’s own.
Unloaded Actors without Saved IDs (OldDescriptors) ERollySaveCheckSeverity Default World Partition actors saved before Rolly Save stored their data, which checks of unloaded actors skip. Default: Info.
Play in an Unsaved Map (TemporaryMap) ERollySaveCheckSeverity Default Play In Editor in a map never saved, whose saves no load can open. Default: Warning.
Reset Area in a Streamed Level (ResetAreaStreamed) ERollySaveCheckSeverity Default A Reset Area inside a streaming sublevel or a Standalone level instance reaches actors of other levels, which it cannot reset while its level is unloaded. Default: Warning.
Replicated Collections That Abandon Pieces (AbandonAfterLevel) ERollySaveCheckSeverity Default A geometry collection whose actor saves its breaks has Enable Replication and Enable Abandon After Level on, so the server turns off its pieces past a level as they break: saves keep no break past it, and clients show none of a load’s restore. Default: Warning.
Debug Commands on Quick Keys (QuickKeyDebugCommands) ERollySaveCheckSeverity Default Play In Editor with the quick keys on keys the engine also binds to debug commands, such as viewmode shadercomplexity on F5 and shot showui on F9, which run beside them outside Shipping. Default: Warning.

FRollySaveCollectionScalar

Rolly Save Collection Scalar · #include "Level/RollySaveParameterCollections.h"

A scalar value of a Material Parameter Collection that differs from the collection’s default. Its names are written into saves and never change.

FRollySaveCollectionVector

Rolly Save Collection Vector · #include "Level/RollySaveParameterCollections.h"

A vector value of a Material Parameter Collection that differs from the collection’s default. Its names are written into saves and never change.

FRollySaveComponentFilter

Rolly Save Component Filter · #include "EngineState/RollySaveEngineStateHandler.h"

Which of the actor’s components a handler takes: one that each list with entries holds, any entry within a list. With every list empty, every component of the handler’s kind.

Member Type Default Description
Names TArray<FName> empty Component names, as the Components panel shows them, such as DoorTimeline.
Classes TArray<TSoftClassPtr<UActorComponent> > empty Component classes; their children count too.
Tags TArray<FName> empty Component tags.

FRollySaveDataLayerEntry

Rolly Save Data Layer Entry · #include "Level/RollySaveDataLayerState.h"

What a save holds of one runtime Data Layer. Its names are written into saves and never change; members are only added.

FRollySaveDynamicLevel

Rolly Save Dynamic Level · #include "Level/RollySaveDynamicLevels.h"

What a save holds of one level the game loaded with Load Level Instance under a name. Its names are written into saves and never change; members are only added.

FRollySaveInstanceKey

Rolly Save Instance Key · #include "Instances/RollySaveInstanceTypes.h"

Names one instance of a tracked component across saves and loads. Compare keys, use them as map keys and save them in your own SaveGame variables; Get Rolly Instance Key and Find Rolly Instance by Key turn them into instances and back.

FRollySaveInstanceSettings

Rolly Save Instance Settings · #include "Instances/RollySaveInstanceTypes.h"

What an actor saves of its instanced meshes, its foliage and the output of its PCG components. Landscape grass, HLODs, Mass crowds and instances that live only on the GPU are never saved.

Member Type Default Description
Mode ERollySaveInstanceMode Off What a load keeps of the instances.
Components ERollySaveInstanceComponents Every Instanced Mesh Which of the actor’s components save their instances.
Meshes TArray<TSoftObjectPtr<UObject> > empty Only components that show one of these static meshes or skinned assets, such as your harvestable trees. Empty: every component Components takes. Each saved instance holds about 56 bytes, plus 4 per custom data value, while its level is loaded.
Match Tolerance float 1 How far an instance may have moved in the level since a save and still take that save’s changes, such as after a designer nudged a tree. Changes that match no instance follow Keep Unmatched. From 0.01 to 1000.
Save Custom Data bool true Save each instance’s custom data values, such as a crop’s growth stage set with Set Custom Data Value. Off: instances keep the values the level gives them.
Keep Unmatched bool true Keep saved changes that match no instance after the level changed, such as a tree moved past Match Tolerance or a repainted forest, so undoing the change matches them again; the load’s Issues list them. Off: the next save drops them.
Regrow After double 0 A removed instance comes back as the level designs it once this much time has passed on Reset Clock in Project Settings > Plugins > Rolly Save > Reset Areas, such as 259200 for three days, and On Instances Regrown fires. Inside a Reset Area set to Never with Reset Instances on, nothing regrows. 0: removed instances stay removed. From 0 to 315360000.
Regrow After per Mesh (RegrowAfterByMesh) TMap<TSoftObjectPtr<UObject> ,double> empty Meshes that regrow after their own time in seconds, such as bushes after 3600 while trees use Regrow After; 0 keeps that mesh removed.

FRollySaveMaterialComponent

Rolly Save Material Component · #include "EngineState/RollySaveMaterialHandler.h"

The materials of one mesh or decal component, as the Material Parameters handler saves them.

FRollySaveMaterialDoubleVector

Rolly Save Material Double Vector · #include "EngineState/RollySaveMaterialHandler.h"

A double vector parameter of a dynamic material instance: global parameters only, since the engine sets them by name.

FRollySaveMaterialObject

Rolly Save Material Object · #include "EngineState/RollySaveMaterialHandler.h"

An object parameter of a dynamic material instance, such as a texture or a font, as the Material Parameters handler saves it.

FRollySaveMaterialScalar

Rolly Save Material Scalar · #include "EngineState/RollySaveMaterialHandler.h"

A scalar parameter of a dynamic material instance, as the Material Parameters handler saves it.

FRollySaveMaterialSlot

Rolly Save Material Slot · #include "EngineState/RollySaveMaterialHandler.h"

One material slot of a component, as the Material Parameters handler saves it.

FRollySaveMaterialVector

Rolly Save Material Vector · #include "EngineState/RollySaveMaterialHandler.h"

A vector parameter of a dynamic material instance, as the Material Parameters handler saves it.

Rolly Save Montage Link · #include "EngineState/RollySaveMontageHandler.h"

A section link of a playing montage that differs from its asset’s, as the Montages handler saves it.

FRollySaveMontageMesh

Rolly Save Montage Mesh · #include "EngineState/RollySaveMontageHandler.h"

The montages one skeletal mesh plays, as the Montages handler saves them.

FRollySaveMontageState

Rolly Save Montage State · #include "EngineState/RollySaveMontageHandler.h"

One montage a skeletal mesh plays, as the Montages handler saves it.

FRollySaveParameterCollection

Rolly Save Parameter Collection · #include "Level/RollySaveParameterCollections.h"

What a save holds of one Material Parameter Collection in one map. Its names are written into saves and never change; members are only added.

FRollySaveProfileInfo

Rolly Save Profile Info · #include "RollySaveTypes.h"

One named profile as List Rolly Profiles gives it, read without opening the profile’s file.

Member Type Default Description
Key FString empty The profile’s key, such as profile_0a1b2c3d: what Use, Rename and Delete Rolly Profile take and what saves record.
Display Name FString empty The profile’s name as the player typed it.
Save Time FDateTime 0 When the profile was last saved, in UTC.
Used by Player int32 -1 The local player who uses the profile, 0 for the first; -1 for none.

FRollySavePropertyPath

Rolly Save Property Path · #include "Rules/RollySavePropertyPath.h"

One property of an actor or of its components that saves by path, such as a light’s intensity: Save Rules and the Rolly Save component list them in Saved by Path and Not Saved. A load gives the value back through the property’s setter where Rolly Save knows one.

Member Type Default Description
Component FName None The component’s name as the Components panel shows it. None, with Component Class and Component Tag empty: the actor’s own property.
Property FName None The property’s name in C++ or the Blueprint. None in Not Saved: the whole component.
Component Class TSoftClassPtr<UActorComponent> None Every component of this class or a class made from it, components added during play included. With Component set, only the one of that name.
Component Tag FName None Only components with this in their Component Tags.
Members TArray<FName> empty Members inside Property when it is a struct, outermost first, such as Collision Enabled inside Body Instance. At most 8.
Setter FName None A function of the component or actor that takes the value, called instead of the automatic choice, such as a plugin’s Set Speed. Pick Properties fills it from the property’s Blueprint setter. None: automatic.

FRollySaveRecordHandle

Rolly Save Record · #include "Migration/RollySaveMigrationContext.h"

A saved object of the save a migration step changes. Valid inside the Migrate call whose Find Records node returned it.

FRollySaveRecordInfo

Rolly Save Record Info · #include "Migration/RollySaveMigrationContext.h"

Where a saved object is in its save, and what it was saved for.

Member Type Default Description
Chunk Id FString empty The chunk that holds it: GLOB for the game’s objects, WRLD for a map’s.
Chunk Key FString empty The chunk’s key: empty in GLOB, the map’s name in WRLD, such as /Game/Maps/Tavern.
Subject Kind ERollySaveSubjectKind Other How the save names the object it restores. Other for a kind this version does not know.
Subject FString empty The object it restores, such as GameMode for a Global or QuestLog for a Registered Name.
Class Path FString empty The class it was saved as, such as /Game/Chests/BP_Chest.BP_Chest_C; empty when it names none.

FRollySaveResetAreaEntry

Rolly Save Reset Area Entry · #include "Level/RollySaveResetAreaState.h"

What a save holds of one Reset Area. Its names are written into saves and never change; members are only added.

FRollySaveResetAreaSnapshot

Rolly Save Reset Area Snapshot · #include "Level/RollySaveResetAreaState.h"

The settings and shapes of a Reset Area on an actor spawned during play, which stand in for it before it spawns again.

FRollySaveResult

Rolly Save Result · #include "RollySaveTypes.h"

How a Rolly Save operation ended. Every Rolly Save node and event gives one.

Member Type Default Description
Status ERollySaveStatus Succeeded How it ended.
Slot Name FString empty The slot it acted on; for Copy, To Slot Name.
From Backup bool false Load and Copy: the save came from the backup copy because the newest copy is damaged or unreadable, so the last save may be missing. Tell the player.
Detail FString empty What happened, in English for logs; never show it to players.
Issues TArray<FString> empty Values saved or loaded as empty while the rest worked, such as a missing asset, one line each (<Kind>: <detail>), at most 100; the 100th line then says how many more the log has.
Kind ERollySaveSlotKind Other The kind of save that was saved or loaded, from its metadata; Other for other operations and for saves without metadata.

FRollySaveRunLedgerEntry

Rolly Save Run Ledger Entry · #include "Run/RollySaveRunLedger.h"

What the run ledger knows of one single-slot run. Its names are written into profiles and never change.

FRollySaveScope

Rolly Save Scope · #include "RollySaveTypes.h"

Which parts of the game a part save or part load takes. Tick several to save them in one write. Part saves keep what the slot holds of the parts left out.

Member Type Default Description
Players bool false The local players’ controllers, pawns and player states, with their components.
World bool false The maps with their actors and Level Blueprints, the levels kept across travel and streaming, and what saves without a group, such as the game instance and objects registered without one. Actors with a Group are left out.
Groups TArray<FString> empty Registered objects, Save Handlers and actors of these groups, such as Chapter2, in every map. Names compare with capital letters.

FRollySaveSlotInfo

Rolly Save Slot Info · #include "RollySaveTypes.h"

One save as a slot list shows it: List Rolly Slots reads it from the slot index and Get Memory Slots from memory, without reading the save. The members after Size come from the save’s metadata.

Member Type Default Description
Slot Name FString empty The slot’s name as it was saved: what Load takes.
Save Time FDateTime 0 When it was saved, in UTC. Format Text’s As Date Time shows it in the player’s time zone.
Game Data Version int32 0 The Game Data Version it was saved with; above this build’s it does not load.
Size (SizeBytes) int64 0 Bytes in storage.
Has Metadata bool false False when the save’s metadata is missing or cannot be read, such as a save of an older version; the members below then hold their defaults, and the slot still loads.
Title FString empty The save’s title, as the player typed it or Set Rolly Slot Title set it; empty when it has none, such as an autosave.
Has Thumbnail (bHasThumbnail) bool false True when the save holds a picture; Load Rolly Slot Thumbnail gives it as a texture.
Map FString empty The map the save was made in, such as /Game/Maps/Tavern.
Play Time FTimespan 0 Play time when it was saved, counted from the new game: paused time does not count, slow motion counts at real speed.
Location (LocationText) FText empty The place Set Slot Location named when it was saved, such as Tavern Cellar.
Kind ERollySaveSlotKind Other What made the save.
Checkpoint Name FName None The checkpoint’s name, for a checkpoint.
Run State ERollySaveRunState None Whether the save belongs to a single-slot run, and whether that run ended.
New Game Plus Cycle int32 0 The New Game Plus cycle it was saved in; 0 in a first game.
Profile Key FString empty The profile key of the first local player when it was saved, to show each profile its own saves.
Game Fields FInstancedStruct Your Slot Fields Struct as Set Slot Game Fields filled it; empty when the save holds another struct or none. Read it with Get Instanced Struct Value.
Capture Frames int32 1 The frames the save’s capture took: 1 for a capture in one frame, more for a save Spreading Work spread. Saves made before this version read 1.

FRollySaveSoundState

Rolly Save Sound State · #include "EngineState/RollySaveAudioHandler.h"

One audio component of an actor, as the Audio handler saves it.

FRollySaveStarter

Rolly Save Starter · #include "Game/RollySaveEvents.h"

Who started a save (On Save Started).

Member Type Default Description
By ERollySaveStartedBy Server Who started the save.
Player APlayerController None The local player’s controller when By is Local Player; None otherwise.

FRollySaveTagQueryNode

Rolly Save Tag Query Node · #include "Level/RollySaveResetAreaState.h"

One expression of a Gameplay Tag Query as a Reset Area’s snapshot keeps it, depth first: the expressions of an expression of expressions follow it. Its names are written into saves and never change.

FRollySaveThumbnailHold

Rolly Save Thumbnail Hold · #include "Game/RollySaveThumbnailHold.h"

A picture of one player’s view that Capture Rolly Thumbnail Hold took, kept by whoever holds this instead of for the next save: each of several menus open at once, such as two split-screen players’ save screens, keeps its own until Use Rolly Thumbnail Hold gives it to that menu’s save. Copies share the picture; it goes with the last copy.

FRollySaveTimelineState

Rolly Save Timeline State · #include "EngineState/RollySaveTimelineHandler.h"

One timeline of an actor, as the Timelines handler saves it.

RollySaveStateTree

FRollySaveStateTreeActiveState

Rolly Save State Tree Active State · #include "RollySaveStateTreeHandler.h"

One active state of a saved StateTree path, as the StateTree handler saves it: the tree that holds it and its ID there.

FRollySaveStateTreeState

Rolly Save State Tree State · #include "RollySaveStateTreeHandler.h"

One StateTree component, as the StateTree handler saves it.

RollySaveGAS

FRollySaveGASAbility

Rolly Save GAS Ability · #include "RollySaveGASTypes.h"

One ability given to a component, as the Gameplay Abilities handler saves it.

FRollySaveGASAttribute

Rolly Save GAS Attribute · #include "RollySaveGASTypes.h"

One attribute’s base value, as the Gameplay Abilities handler saves it.

FRollySaveGASEffect

Rolly Save GAS Effect · #include "RollySaveGASTypes.h"

One active effect, as the Gameplay Abilities handler saves it.

FRollySaveGASState

Rolly Save GAS State · #include "RollySaveGASTypes.h"

One Ability System Component, as the Gameplay Abilities handler saves it.

FRollySaveGASTagCount

Rolly Save GAS Tag Count · #include "RollySaveGASTypes.h"

One loose tag with its count, as the Gameplay Abilities handler saves it.

RollySaveUI

FRollySaveSlotFields

Rolly Save Slot Fields · #include "RollySaveUITypes.h"

What each row and the detail show of a save.

Member Type Default Description
Location (bLocation) bool true The place Set Slot Location named.
Play Time (bPlayTime) bool true The play time.
Save Time (bSaveTime) bool true When the save was made.
Kind Icons (bKindIcons) bool true Quick saves, autosaves, checkpoints and runs marked on the picture.
Map (bMap) bool false The map, in the detail.
New Game+ (bNewGamePlusCycle) bool false The New Game+ cycle, above 0.
Profile (bProfile) bool false The profile that made the save, while every profile’s saves show.

FRollySaveUIGameField

Rolly Save UI Game Field · #include "RollySaveUITypes.h"

A member of your Slot Fields Struct the slot screen shows, with its words.

Member Type Default Description
Member FName None The member of your Slot Fields Struct.
Format FText {Value} How it reads; {Value} is the member’s value, such as Day {Value}.
In Row (bInRow) bool true In the row’s caption.
In Detail (bInDetail) bool true In the detail’s facts.

FRollySaveUITexts

Rolly Save UI Texts · #include "RollySaveUITypes.h"

Words the slot screen, the indicator and the overlay show.

Member Type Default Description
Save Title (SaveTitle) FText Save Game The slot screen’s title in Save mode.
Load Title (LoadTitle) FText Load Game In Load mode.
New Game Title (NewGameTitle) FText New Game In New Game mode.
Import Title (ImportTitle) FText Import a Save Over the export folder’s saves, and the row that opens it.
New Save (NewSave) FText New Save The row that saves to a new slot.
New Playthrough (NewPlaythrough) FText New Playthrough The row that starts a new playthrough.
New Run (NewRun) FText New Run The row that starts a new run.
No Saves (NoSaves) FText No saves yet. Load with no saves.
No Profile Saves (NoProfileSaves) FText No saves for {Profile} yet. Load with no saves of the profile shown; {Profile} is its name.
Client Refused (ClientRefused) FText Only the host can save and load. A client asked for a Save, Load or New Game screen.
First Player Only (FirstPlayerOnly) FText Only Player 1 can load. A player other than player 1 asked to load while Who Can Load is First Player.
Saving FText Saving The indicator while saving.
Saved FText Saved The indicator once saved.
Loading FText Loading The overlay’s corner while loading, and the saving indicator’s corner while a player is held for ground.
Loaded FText Loaded. Menu narration as the loading overlay leaves after a load that succeeded.

FRollySaveUITitles

Rolly Save UI Titles · #include "RollySaveUITypes.h"

How saves without a typed title are named; {Number} is the n of slot_<n> or autosave_<n>.

Member Type Default Description
New Save (NewSave) FText Save {Number} A new save’s title in Free Slots, offered in the title question. Also {Location}, {Date}, {PlayTime}.
Numbered FText Slot {Number} A numbered slot’s save.
Playthrough FText Playthrough {Number} A playthrough’s save.
Run FText Run {Number} A run’s save.
Quick FText Quick Save The quick save.
Autosave FText Autosave {Number} An autosave.
Checkpoint FText Checkpoint: {Checkpoint} A checkpoint with a name; {Checkpoint} is its name.
Unnamed Checkpoint (UnnamedCheckpoint) FText Checkpoint A checkpoint without a name.
Imported FText Imported Save A save imported from another machine.
Copy FText Copy of {Title} A copy’s title; {Title} is the copied save’s.

RollySaveCore

FRollySaveCoreDeviceFamilyName

Rolly Save Core Device Family Name · #include "Input/RollySaveCoreInputTypes.h"

A name of an input device and the gamepad family it belongs to, for button prompts.

Member Type Default Description
Name FString empty An input device’s hardware name or input class name (XInputController, DualSense), or a part of it with Match Part Of Name. Letter case does not matter.
Match Part Of Name bool false Match when the device’s name contains Name. Exact names are tried first.
Family ERollySaveCoreGamepadFamily Generic The family whose button prompts a device with this name shows.

RollySaveCoreUI

FRollySaveCoreUIArea

Rolly Save Core UIArea · #include "Layout/RollySaveCoreUIAreas.h"

The area a screen fills, sorted into size classes, with the two rules every template shares worked out: below 640 x 360 the layout keeps that size and scales down to fit (the only case where text gets smaller), and on screens wider than 21:9 the content lays out in a centred region at most Max Layout Aspect times the height wide while the backdrop fills the rest.

Member Type Default Description
Size FVector2D 0, 0 The area the screen was given; zero while it is unknown (the full layout is used then).
Layout Size FVector2D 0, 0 The area the layout uses: the given area, or 640 x 360 below that floor.
Scale float 1 How much the layout is scaled to fit: 1, or less below the floor.
Region Width float 0 The width content lays out in: the layout width, at most Max Layout Aspect times the screen’s height. 0 while unknown.
Region Aspect float 0 The widest aspect the region lays out in (0: any): Max Layout Aspect, widened for a player in a horizontal split.
Width ERollySaveCoreUIWidthClass Wide The width class of the layout size.
Height ERollySaveCoreUIHeightClass Tall The height class of the layout size.

FRollySaveCoreUIBehaviour

Rolly Save Core UIBehaviour · #include "Theme/RollySaveCoreUIThemeTypes.h"

How the interface behaves.

Member Type Default Description
Wrap Navigation bool true Lists, the rail and dialog buttons go from the last item around to the first (grids never wrap).
Hover Moves Focus bool true Moving the mouse over a row or button focuses it while the player uses keyboard and mouse.
Show Option Dots ERollySaveCoreUIOptionDots Template Default When steppers show a dot per option under their value.
Toast Seconds float 6 The least time a notification stays (seconds); longer text stays longer. From 2 to 30.

FRollySaveCoreUICategory

Rolly Save Core UICategory · #include "Navigation/RollySaveCoreUICategoryNav.h"

One category a screen shows: a tab, a rail item, a hub tile, a page of a switcher.

Member Type Default Description
Name FText empty The name shown.
Icon ERollySaveCoreUIIcon None The icon before the name on rail items and hub tiles (None: no icon).
Summary FText empty A short summary for hub tiles in words of its own; when empty, tiles list the Summary Parts.
Summary Parts TArray<FText> empty The live values a hub tile lists when Summary is empty (“Fullscreen”, “VSync Off”): as many on a line as fit, a dot between them, two lines at most.
Pending Count int32 0 How many changes in the category wait for Apply: rail items and tiles show a dot (and tiles “1 change”).
Id FName None A name that stays with the category while others come and go, so a screen that is open keeps the player on it when a category appears or disappears before it. None: the selection keeps its position instead.

FRollySaveCoreUIColors

Rolly Save Core UIColors · #include "Theme/RollySaveCoreUIThemeTypes.h"

The 22 colour roles of a theme.

Member Type Default Description
Backdrop FLinearColor #000000 The full-area layer behind a screen, over the game (with alpha). Text sits on it only when it passes contrast over a white and a black frame.
Scrim FLinearColor #000000 The layer behind a dialog, over the screen below (dims it).
Surface FLinearColor #000000 Panels, cards and the drawer: the base of most text.
Surface Raised FLinearColor #000000 Dialogs, strips, the selected rail item and toasts.
Surface Sunken FLinearColor #000000 Slider and switch tracks and wells.
Outline FLinearColor #000000 Hairlines, panel edges and dividers (decoration, no contrast needed).
Outline Strong FLinearColor #FFFFFF Boundaries of interactive controls (key cells, secondary buttons): 3:1 on Surface.
Text FLinearColor #FFFFFF Names, values, titles and prompt labels: 4.5:1 on every surface.
Text Muted FLinearColor #FFFFFF Descriptions, headings, hints and unselected tabs: 4.5:1 on Surface and Surface Raised.
Text Disabled FLinearColor #BCBCBC Names and values of settings that cannot change right now: 3:1.
Accent FLinearColor #FFFFFF Primary actions, selection marks, progress and small icons: 4.5:1 on Surface (it is also used as text). Keep it small: controls use Control.
On Accent FLinearColor #000000 Text and icons on Accent (4.5:1), and the knob of a switch that is on (3:1 on Control).
Control FLinearColor #FFFFFF Control affordances: switch tracks that are on, slider fills, active chevrons, current option dots (3:1 on Surface).
Focus FLinearColor #FFFFFF The focus indicator: 3:1 on Surface and on Focus Fill.
Focus Fill FLinearColor #000000 The fill of the focused row, tile or item (text keeps 4.5:1 on it).
Hover Fill FLinearColor #000000 The fill under the mouse pointer (text keeps 4.5:1 on it).
Pending FLinearColor #FFFFFF Dots that mark changes waiting for Apply: 3:1 on Surface.
Warning FLinearColor #FFFF00 A restart is needed, caution: 4.5:1 (used as text).
Danger FLinearColor #FF0000 Errors, destructive answers, refused keys: 4.5:1 (used as text).
Success FLinearColor #00FF00 Confirmations (applied, saved): 4.5:1 (used as text).
Key Cap FLinearColor #000000 The face of key and button caps.
Key Cap Text FLinearColor #FFFFFF Labels inside key and button caps: 4.5:1 on Key Cap.

FRollySaveCoreUIDialogOptions

Rolly Save Core UIDialog Options · #include "RollySaveCoreUITypes.h"

What a dialog shows and how it ends.

Member Type Default Description
Title FText empty The heading.
Message FText empty The question or information under the heading.
Confirm Text FText empty Text of the confirm button. Empty: “OK”.
Cancel Text FText empty Text of the cancel button. Empty: “Cancel”.
Confirm Variant ERollySaveCoreUIButtonVariant Primary How the confirm button looks: Primary for the main answer, Danger for a destructive one.
Cancel Variant ERollySaveCoreUIButtonVariant Secondary How the cancel button looks. It is the safe answer: first and focused unless Focus Confirm is on.
Confirm Only bool false Show only the confirm button (an information dialog). Back still closes it as Cancelled.
Focus Confirm bool false Focus the confirm button when the dialog opens. Off: the cancel button, the safe choice.
Countdown Seconds float 0 Seconds until the dialog answers itself. 0: no countdown. Counts real time, so it runs while the game is paused. At least 0.
Timeout Result ERollySaveCoreUIDialogResult Cancelled The answer when the countdown ends.
Countdown Format FText empty How the seconds left are shown under the message; {Seconds} is replaced by the number (for example “Reverting in {Seconds} s”). Empty: “{Seconds} s left”.
Countdown Spoken Format FText empty How menu narration reads the seconds left, in words; {Seconds} is replaced by the number (“Reverting in {Seconds} seconds.”). It is read when the dialog opens, every 5 seconds, then each second for the last 5, never within 2 seconds of the player’s input. Empty: “{Seconds} seconds left.”

FRollySaveCoreUIElevation

Rolly Save Core UIElevation · #include "Theme/RollySaveCoreUIThemeTypes.h"

Shadows and the backdrop treatment.

Member Type Default Description
Shadow Color FLinearColor #00000099 The colour of shadows under dialogs, cards and drawers (alpha 0: no shadows).
Backdrop Blur float 0 Background blur behind a screen: 0 is off; otherwise its strength (one blur per screen; the backdrop becomes the fallback where blur is not available). From 0 to 50.
Backdrop Gradient To FLinearColor #00000000 A second backdrop colour for a vertical gradient; alpha 0 means no gradient.
Backdrop Vignette float 0 Darkening at the edges of the backdrop, 0 to 1. From 0 to 1.

FRollySaveCoreUIGlyphOverride

Rolly Save Core UIGlyph Override · #include "Theme/RollySaveCoreUIThemeTypes.h"

Replaces how one key or button is shown.

Member Type Default Description
Family ERollySaveCoreUIGlyphFamily Keyboard Mouse The family the override applies to (keyboard and mouse, or a gamepad family).
Key FKey None The key or button.
Label FText empty The short label on the cap (A, LB, Esc). Empty keeps the built-in label.
Icon FSlateBrush An image instead of the label (your own button art). Leave its Image empty to draw the label.
Round bool false Draw a circle (face buttons) instead of a key cap.
Tint FLinearColor #00000000 The label’s colour while Glyph Tints is on; alpha 0 keeps Key Cap Text. A tint below 3:1 on Key Cap is not used.

FRollySaveCoreUIGlyphTintColors

Rolly Save Core UIGlyph Tint Colors · #include "Theme/RollySaveCoreUIThemeTypes.h"

The family colours of gamepad face buttons (the controllers’ own), drawn only while the theme’s Glyph Tints is on. A tint below 3:1 on Key Cap is never drawn: that glyph uses Key Cap Text, and the theme’s checks say so.

Member Type Default Description
Xbox A FLinearColor #FFFFFF The Xbox A button (green).
Xbox B FLinearColor #FFFFFF The Xbox B button (red).
Xbox X FLinearColor #FFFFFF The Xbox X button (blue).
Xbox Y FLinearColor #FFFFFF The Xbox Y button (yellow).
PlayStation Cross (PlayStationCross) FLinearColor #FFFFFF The PlayStation cross (blue).
PlayStation Circle (PlayStationCircle) FLinearColor #FFFFFF The PlayStation circle (red).
PlayStation Square (PlayStationSquare) FLinearColor #FFFFFF The PlayStation square (pink).
PlayStation Triangle (PlayStationTriangle) FLinearColor #FFFFFF The PlayStation triangle (green).

FRollySaveCoreUIKeyboardRows

Rolly Save Core UIKeyboard Rows · #include "Search/RollySaveCoreUIKeyboardLayouts.h"

The letter rows of an on-screen keyboard for a culture, as Project Settings > Rolly Save Core UI > Keyboard Layouts names them.

Member Type Default Description
Rows TArray<FString> empty The letter rows, top to bottom, each as its keys’ characters in order (“qwertyuiop”). The digits row comes first by itself.

FRollySaveCoreUIListMessage

Rolly Save Core UIList Message · #include "Components/RollySaveCoreUIListMessage.h"

A line a list shows in place of its rows: why it is empty, that it is being read, or that reading failed.

Member Type Default Description
Text FText empty What the list says (“No saves yet.”). Empty: no message, the rows show.
Icon ERollySaveCoreUIIcon None An icon before the text (None: none). A busy message shows the spinner there instead.
Busy bool false Something is being read or made: the spinner turns before the text, and the message shows only once it has lasted the Busy Delay (250 ms by default), so a quick read never flashes.
Action Label FText empty The words of a button under the text (“Try Again”), which takes focus; empty: no button.

FRollySaveCoreUIMotion

Rolly Save Core UIMotion · #include "Theme/RollySaveCoreUIThemeTypes.h"

Durations, easings and distances of every animation.

Member Type Default Description
Motion Scale float 1 Multiplies every duration and distance; 0 is reduced motion (movement snaps, fades take 100 ms or less). From 0 to 2.
Duration Fast float 0.1 Focus changes, hover, the switch knob, value feedback (seconds). From 0 to 1.
Duration Standard float 0.18 Screens, cards and dialogs entering, page changes (seconds). From 0 to 1.
Duration Slow float 0.28 The drawer sliding (seconds). From 0 to 2.
Ease Enter ERollySaveCoreUIEase Cubic Out Things arriving.
Ease Exit ERollySaveCoreUIEase Cubic In Things leaving (at 0.7 of the enter duration).
Ease Move ERollySaveCoreUIEase Cubic in Out Things moving between places.
Overshoot bool false A small overshoot on focus pops and tiles.
Enter Distance float 16 How far things rise or slide when they enter. From 0 to 200.

FRollySaveCoreUINarrationLine

Rolly Save Core UINarration Line · #include "Narration/RollySaveCoreUINarrationTypes.h"

One line for the narration voice.

Member Type Default Description
Text FText empty What is said, with its commas and full stops written in, so every voice pauses at the same places.
Culture FString empty The culture of the text (“de”, “pt-BR”); empty is the interface language. A voice of that culture reads it where one exists.
Class ERollySaveCoreUINarrationClass Interrupt How the line takes its turn.
Player Index int32 -1 The local player whose input or screen caused the line (0 for the first); INDEX_NONE for none in particular.

FRollySaveCoreUINarrationVoice

Rolly Save Core UINarration Voice · #include "Narration/RollySaveCoreUINarrationTypes.h"

A voice menu narration can use, as a player picks one.

Member Type Default Description
Id FString empty The saved name: ScreenReader, Windows:<voice id>, Engine or Game.
Name FText empty The name players read (“Screen Reader”, “Microsoft Zira”, “Built-in Voice”).
Culture FString empty The culture the voice speaks (“en-US”); empty when it speaks any (a screen reader).
Own Voice bool true False for the screen reader, which speaks only while the player runs one; true for voices the game plays itself.
Has Rate bool true The voice’s speed can be set (Narration Speed applies).
Has Volume bool true The voice plays through the game’s audio (Narration Volume applies).

FRollySaveCoreUIPromptEntry

Rolly Save Core UIPrompt Entry · #include "Components/RollySaveCoreUIPromptBar.h"

One prompt of a prompt bar: what it does, the keys it shows and what it says.

Member Type Default Description
Id FName None Names the prompt: On Prompt Clicked passes it back, and the prompt keeps its widget while the Id stays.
Gamepad Key FKey None The key shown while the player uses a gamepad, drawn in the player’s gamepad family.
Keyboard Key FKey None The key shown while the player uses keyboard and mouse (or touch).
Label FText empty What the key does, in words. An empty label hides the prompt.
Enabled bool true An unavailable prompt stays in place, dimmed, and ignores clicks, so the bar does not jump.
Second Gamepad Key FKey None A second gamepad key shown after the first (a pair: the previous and next category buttons).
Second Keyboard Key FKey None A second keyboard key shown after the first.
Priority int32 0 When the bar runs out of room (after wrapping to its lines), prompts with the lowest priority go first.
Always Shown bool false Never dropped for room (the row’s action, Back).
Reserved Labels TArray<FText> empty Labels the prompt shows at other times (Back’s “Close” and “All settings”, each row’s action): it keeps the width of the widest, so the prompts beside it never move while the screen is open.
Keep Place bool false Keeps the prompt’s place while its label is empty (nothing to do now) instead of letting the others move into it.

FRollySaveCoreUIShape

Rolly Save Core UIShape · #include "Theme/RollySaveCoreUIThemeTypes.h"

Corner radii, borders and focus.

Member Type Default Description
Radius Small float 4 Glyph caps, buttons, chevron hit areas and strips. At least 0.
Radius Medium float 6 Rows and rail items. At least 0.
Radius Large float 8 Panels, cards, dialogs, drawers, tiles and toasts. At least 0.
Hairline Width float 1 Panel edges and dividers. At least 0.
Control Outline Width float 1 Outlines of key cells and secondary buttons. At least 0.
Focus Style ERollySaveCoreUIFocusStyle Ring How focus is drawn. Ring meets WCAG 2.4.13; High Contrast always uses Ring.
Focus Width float 2 Thickness of the focus ring, bar or brackets (at least 2). From 1 to 8.
Focus Glow float 0 A soft glow around the focus ring, in the Focus colour at this opacity (0: none; the Neon preset uses 0.4). Never in high contrast. From 0 to 1.

FRollySaveCoreUISizes

Rolly Save Core UISizes · #include "Theme/RollySaveCoreUIThemeTypes.h"

Spacing steps and component sizes at Standard density (the density multiplies them inside components).

Member Type Default Description
Space 1 float 4 Spacing step 1 (4). At least 0.
Space 2 float 8 Spacing step 2 (8). At least 0.
Space 3 float 12 Spacing step 3 (12). At least 0.
Space 4 float 16 Spacing step 4 (16). At least 0.
Space 5 float 24 Spacing step 5 (24). At least 0.
Space 6 float 32 Spacing step 6 (32). At least 0.
Space 7 float 48 Spacing step 7 (48). At least 0.
Space 8 float 64 Spacing step 8 (64). At least 0.
Space 9 float 96 Spacing step 9 (96). At least 0.
Row Height float 56 The least height of a row; a row grows when its name needs two lines. At least 24.
Row Gap float 2 The space between rows. At least 0.
Control Height float 48 The height of buttons and tabs. At least 24.
Glyph Height float 32 The height of glyph caps; round caps are as wide. At least 16.
Icon Size float 24 Inline icons (20 in facts, 16 in badges). At least 8.
Icon Size Large float 40 Large icons (hub tiles). At least 8.
Value Width float 380 The value column of a row. At least 120.
Detail Width float 440 The side detail panel. At least 0.
Rail Width float 300 The side rail. At least 120.
Card Width float 880 The centered panel. At least 320.
Drawer Width float 560 The side drawer. At least 320.
Dialog Width float 640 Dialogs (they grow for long buttons, then wrap). At least 240.
Tile Size FVector2D 300, 200 Hub tiles.
Tile Summary Size float 14 The size of a hub tile’s summary (Slate size at Standard density), in the Caption role’s typeface, two lines at most. From 10 to 40.
Toast Width float 420 Toasts. At least 200.
Screen Margin FMargin 96, 64, 96, 48 Margins of a screen on tall and wide areas (not scaled by density).
Compact Screen Margin FMargin 40, 24, 40, 20 Margins on short or narrow areas: split screen, small windows (not scaled by density).
Tiny Screen Margin FMargin 16, 12, 16, 12 Margins on tiny areas (not scaled by density).
Content Max Width float 1640 The widest a screen’s content grows (not scaled by density). At least 400.
Max Layout Aspect float 2.37 Wider areas lay out in a centred region this many times as wide as it is high (21:9); the backdrop fills the rest. From 1.0 to 4.0.

FRollySaveCoreUISounds

Rolly Save Core UISounds · #include "Theme/RollySaveCoreUIThemeTypes.h"

The sounds of the interface; all empty by default. Give them the Sound Class your Effects or UI volume controls.

Member Type Default Description
Navigate FSlateSound Focus moves because of the player’s input (not when a screen opens).
Change FSlateSound A value changes.
Accept FSlateSound A button, action or entry is pressed.
Back FSlateSound A level or screen closes with Back.
Error FSlateSound Something is refused (a reserved key, an unavailable setting).
Open FSlateSound A screen, drawer or dialog opens.
Close FSlateSound A screen or drawer closes (not by Back).
Notify FSlateSound A notification appears.

FRollySaveCoreUITemplateContext

Rolly Save Core UITemplate Context · #include "Templates/RollySaveCoreUITemplateTypes.h"

What a template lays itself out for: the area, the level shown and the player.

Member Type Default Description
Area FRollySaveCoreUIArea The area the screen fills, sorted into size classes.
Category Level bool false True while the categories level of a two-level template shows (the rail has focus, the hub’s tiles show).
Touch bool false True while the player uses touch.
Player Count int32 1 How many local players share the screen (split screen above one).
Dock Side ERollySaveCoreUIDrawerSide Right The side a docked panel goes to: Project Settings’ side, or the outer edge of the player’s part of the screen.
Has Preview bool false The category shown has a preview picture to show (its own or a row’s); a template keeps room for previews only then.
Search bool false Search results or typing show in the categories’ place.
Typing bool false A search is being typed: the detail has nothing to show and hides.
Keyboard bool false The on-screen keyboard shows (a gamepad or touch player types a search): the template’s Keyboard slot holds it.
Single Category bool false The screen shows one category and hides the navigation of a single one (its Hide Single Category): the template shows no category navigation and one level.

FRollySaveCoreUITemplateTraits

Rolly Save Core UITemplate Traits · #include "Templates/RollySaveCoreUITemplateTypes.h"

What a template decides for a context: which navigation shows, how many levels there are, how the detail and the title show, and the room rows and prompts have. The screen builds and drives its parts to match.

Member Type Default Description
Navigation ERollySaveCoreUINavigationKind Tabs The category navigation in the Navigation slot.
Switcher Style ERollySaveCoreUISwitcherStyle Full How a switcher shows the category (when Navigation is a switcher).
Navigation on Title Line bool false The navigation ends the title line, after the header’s actions and centred on that line with them (the couch hub’s pages). Where the widest category’s name, the actions and the navigation do not fit the header 16 units apart, the navigation takes a line of its own 8 under the title on every page, its right end at the list’s; a compact page (Header Compact Page) keeps the navigation on the line and ends the title with an ellipsis instead, so its list keeps its rows. A hidden restart notice keeps its room on the title line only where the whole line fits. Off, the navigation shows in the template’s Navigation slot.
Two Levels bool false Two levels (categories, then a list): Back goes from the list to the categories.
Start at Categories bool false Focus opens on the categories (the rail, the hub’s tiles) rather than in the list.
Back to Categories Label FText empty What the Back prompt says in the list of a two-level template (“Categories”, “All settings”).
Close Label FText empty What the Back prompt says where it closes the screen (empty: “Back”); the drawer says “Close”.
Reset Names Category bool true The Reset prompt names the category (“Reset Controls”); off, it reads “Reset Tab” (the tabs, where the category is the tab in view).
Option Dots bool false Choices show a dot per option under their value while the theme leaves it to the template (the couch hub, read from far away).
Detail Form ERollySaveCoreUIDetailForm Panel How the detail shows.
Detail Lines int32 2 Lines of description a strip or band shows.
Detail Facts bool true The strip or band also shows a line of facts (when there is room).
Preview Column bool false The focused setting’s preview shows in the template’s Preview slot instead of the detail.
Preview Width float 0 The preview’s width in layout units (the detail panel’s inner width, or the preview column’s).
Header ERollySaveCoreUIHeaderStyle Display How the title shows.
Show Title bool true The title shows (short areas drop it).
Category Title bool false The category’s name shows above the list (the side rail).
List Panel bool true The list sits on a panel of its own (Surface, a hairline); off when the template’s card is the surface.
Category Prompt bool true A Category prompt (the switch keys as a pair) joins the footer; the tabs show their keys themselves.
Badge in Footer bool false The player badge sits in the footer (the header is hidden).
Compact Navigation bool false Navigation of the short-area size (rail items 48, switcher 56, tabs 40 on Tiny heights).
Compact Tabs bool false Tabs of the Tiny-height size.
Tile Columns int32 4 Hub columns (Tiles navigation); 0 turns the tiles into a list.
Tile Summaries bool true Tiles show their summaries.
Row Width float 0 The width of the list’s rows in layout units (0: unknown): rows stack below 640 and get their value width from it.
Value Share float 0 The share of a row the value takes (0: the theme’s Value Width).
Footer Width float 0 The footer’s width in layout units (0: unknown): the prompts get what the pending counter leaves, and drop by priority past Footer Lines.
Header Width float 0 The width of the line the title stands on, in layout units (0: the Footer Width): a hidden restart notice keeps its room on that line only where the title, the header’s actions and the notice fit it. A side rail’s title stands in the rail’s column, narrower than its footer. At least 0.
Footer Lines int32 2 Lines the footer’s prompts may take before the least important ones drop: two, one on Tiny areas, where the list needs the room. At least 1.
Backdrop ERollySaveCoreUIBackdropMode Full How the backdrop covers the game.
Backdrop Edge Extent float 0 Edge backdrops: how far the docked panel reaches in from its side, in layout units.
Pauses Game bool true The screen pauses a standalone game while it shows (the drawer never does).
Search Entry Form ERollySaveCoreUISearchEntryForm Field How the search entry shows.

FRollySaveCoreUITextRoles

Rolly Save Core UIText Roles · #include "Theme/RollySaveCoreUIThemeTypes.h"

The ten text roles.

Member Type Default Description
Display FRollySaveCoreUITextStyle Screen titles.
Title FRollySaveCoreUITextStyle Page, dialog, detail and tile titles.
Heading FRollySaveCoreUITextStyle Section headings in lists.
Tab FRollySaveCoreUITextStyle Tabs and rail items.
Label FRollySaveCoreUITextStyle Row names.
Value FRollySaveCoreUITextStyle Row values.
Button FRollySaveCoreUITextStyle Buttons.
Body FRollySaveCoreUITextStyle Descriptions and dialog messages.
Caption FRollySaveCoreUITextStyle Prompt labels, facts, hints, column titles, toasts.
Key Cap FRollySaveCoreUITextStyle Text inside key and button caps.

FRollySaveCoreUITextStyle

Rolly Save Core UIText Style · #include "Theme/RollySaveCoreUIThemeTypes.h"

How one text role looks.

Member Type Default Description
Slot ERollySaveCoreUIFontSlot Primary Which of the theme’s fonts the role uses.
Typeface FName Regular The typeface in that font (Regular, Medium, Bold, Black, BoldCondensed, Italic and the others the font has).
Size float 18 The size at Standard density (Slate size: points at 96 DPI). Every role must measure at least 18 px at 1080p (26 px at Large density). From 6 to 200.
Tracking int32 0 Letter spacing in thousandths of an em. From -200 to 400.
Case ERollySaveCoreUITextCase As Written As written, or in capitals (only for roles of one or two words).
Line Height float 1 Line height as a multiple of the font’s own (1.3 on Body gives the 1.5 em text blocks need). From 0.8 to 2.5.

FRollySaveCoreUIToastOptions

Rolly Save Core UIToast Options · #include "RollySaveCoreUITypes.h"

What a toast says.

Member Type Default Description
Message FText empty The message, up to three lines. Longer text stays longer.
Kind ERollySaveCoreUIToastKind Info What the toast is about.