Can anyone help with some save / load stuff?

I’m having some trouble with saving / loading and keeping some individual items within levels permanently collected.

So far what I have is a Menu with continue and new game both of these > open level: Over World Map. here the player can just select a level to enter but its all in 3D rather than 2D. The important part is that the player can reenter any level they wish at any point to collect anything important they may have missed (In this case there is only 1 serious collectable that needs to be stored( and possibly lives? i’ve not got that far yet)

So lets start as though its a new game, you should only be able to play level 1 until its completed and then be able to move on
The player goes through level 1 collects 4 of the 6 collectibles (these are currently just a BP so they can be instanced easy with all the stuff they need to do like look at player etc) and then proceeds to the level end, this (currently how i have it set up) loads the save file and overwrites it, and should set the currently level completed name but im not sure im doing this correctly. it then brings up a UMG that I can just select to go back to the level select level

If the player reenters level 1 the 4 /6 collected objects should not appear again.
If the player completes say level 1-3 returns to level 1 , it should not relock level 3 from being accessed (as I think thats what would currently happen with what i’ve done.

Sorry if this all sounds a bit weird, i guess another way to think about it is like mario 64 and the stars, which is basically the same system I need for this, along with being able to reenter levels, rather than a linear continuous path. the collected objects also need to be persistent between each level and the overworld as collecting them all would unlock a final world to explore after the final boss.

What part of this is giving you trouble? I understand what you want to do, but I don’t get what you’re asking for help with.

How to get the collected objects to save once you leave the level, and for them to stay collected if you reenter a level

You could give each one a unique int, and in the save data have an array of bools set to true or something. When you collect the pickup, set the array of bools at whatever the pickup’s int is to false. On the pickup’s start, check the array at the pickup’s int, and if it’s false, then destroy it. That’s what I would do at least, not saying it’s the best way