This plugin have been implemented into several PlayStation titles;
But none have shared implementation code with me, because obvious Sony reasons.
You have to either pre-allocate slot classes in editor, or keep a “slot ID” variable in your single slot class to determine in which “player profile” a player is saving to.
Non coders find it easier to simply create new slot base classes in editor.
You can add and remove “records” to slots at runtime from c++ or blueprints for automated testing.
Some devs use automated testing frameworks for that, I do not have the details of how they do it.
SaviorMetaData.h is a very simple header file where many determine custom progression properties that are independent of bulk save files (they can loaded without loading a save file from this).
Then they modify / include Getters into the Savior3.h header to support their custom gameplay tags that can be displayed to player UI without performing any heavy slot data loading.
You can use plugin API to only save what you need or use Scope filters to determine the reach of the Save World node.
In Slot Scopes you can set the classes that you want to include into save files, by default anything child of AActor or UActorComponent is accepted by the Slot Scope.