how to save uobjects to game instance

im building a tarkov style Looter game with a grid base inventory. the items in this inventory are represented as an array of blueprint objects (call it ItemObject_Array) that holds all the variables related to each item.
this array is then held in its own blueprint object (call it BackpackIO )class inside of a backpack actor that is attached to the player character.

im trying to figure out a way to save BackPackIO so that the contents of the players inventory does not get lost when i move from one level to another.

ive tried using a custom game instance and a custom save slot. but the variables i need never seem to survive the level transition logic.


this is my save logic, every point in this seems to report success.

this is my load logic, everything report success except that my BackpackIO variable always reports as null.

im tearing my hair out of this and dont understand what i am doing wrong. all variables involved and all variables inside the object class have the “SaveGame” box ticked.
im not code savy enough to do any real c++ trickery but does anyone know why this is not working?

You can’t save actors(object reference) in a save file, you can only save native variable like integers, string… so you will need to save everything in a structure variable.

Game instance should usually be able to store an object reference thought(unless there something related to the previous level map). Here an example: Persisting variables across Level Changes in Unreal Engine – JAY VERSLUIS
But if you exit/reopen your game, game instance won’t be able to load that inventory object reference.

you cant save objects you need to put the relevant information in a struct and save that

yeah i tried doing it with a custom game instance and had the exact same results. as soon as i load the next level all of the data i need to keep returns null. ill see if i can some how change the the data into base variables. but my whole system is set up with nested objects so it would probably require me to rebuild my entire system TT_TT

i cant understand why saving an object is just not a thing i can do.