Hey guys quick question,
I’ve been working on a system to permanently modify uasset property values at runtime, but the current system I’ve made requires me to save the values externally from the game and read it in on each game start. I was wondering if there was a way to manually save a modified uproperty for future launches of the game. I know UObject::Serialize is a function that ships with a build, but what would I pass in for a FArchive? Thanks
I don;'t think there is in pakaged game.
You mention that you just want to modify properties, did you tried to use config system? even if you cant do that from asset object direcly you can set up asset properties based on config data of some other class.
Note that your UPROPERTY in order to be config entry need to have “Config” specifier flag, only those properties will be stored as config
Also arguments of those functions are optional
Dang, that’s unfortunate. Used config variables to their limit in previous projects (full config hierarchies) and I don’t think they’d be useful for what I’m trying to achieve. I need to access hundreds of a single UClass type by their UAsset paths, and Config variables aren’t very good at dealing multiple versions of the same variable of a given class. Guess I’ll just have to optimize injecting the values into key functions of the source code instead
Oddly enough, nonresetable is exactly what I’m going for. The goal of what I’m trying to accomplish it to permanently tweak variables of a build after it has been sent to a client. Sending a new build for every tweak over a project’s iterative cycle just isn’t doable when the project is 10gb or more.
Hmm, think it this way, if you want to edit asset pernamently for whatever reason you would need to keep backup for defaults or else your game will be nonresetable