Is there a better way to save my characters variables between levels?

So I have managed to create a working save system but it can get all crazy looking. This is what happens upon death. It saves all the characters current stat variables. Since I am making a RPG game, im going to need alot more stats.
Also I will have to store different events as variables, such as if you already did this puzzle on the map, if you die and have to go through it again, the puzzle is already solved.

I plan on this getting more complicated and that means I am going to have lines everywhere. Just wondering if anyone knows a better way to do this or is this how its got to work for now.

You don’t need to save each variable separately. Use a Struct Blueprint to create and save your character’s Stats.

So I have figured out how to make the struct. But I am unsure as how to connect these two together. Would make a struct for the saved stats as well? And if so how would I plug them together?

I was talking about creating a Struct asset. From the Create Blueprint menu.
Than you reference the struct from both your SaveGame and character classes. When you save your character’s stats all you have to do is save the entire Struct object instead of individual array values.
SavaGame is a serialization class. It can save entire types (classes) to a file not just simple ints or strings.

I have almost got it figured out. I am getting it to save the struct and variables. When I load the game it prints the correct number, however, if I modify that number, say Health goes up by 25, its not adding the old number with the new. So if the base was 100 each time I play I add 25 it should read 125. Well I will save it, and when it loads it will say 125, but then i add 25 more to it, it doesnt go to 150, it just says 125 because its starting back at 100 each time. Thank you for you help though. I am figuring it out.

I am having trouble with these structs, as you can see, anytime I want to modify a value in the struct and set it, I have to connect all the wires, if I leave a variable alone, it always reverts to the default value. Is there something I am missing here? Seems like this may be over complicating it. I have already tried unchecking the boxes next to the variables names so they don’t show. Yet it still reverts them back.

You’ll be calling that kind of Break/Make routines a lot of times; To save your data structs and avoid cluttering your Graph and waste time connecting those pins every single time, you can convert that node network to a “Function” graph:

http://i1234.photobucket.com/albums/ff408/BrUnOXaVIeR/UE4-CtoF_zps813c2309.jpg~original

Than you add the necessary ‘In’ and ‘Out’ pins to the function constructor and it is ready to go:

http://i1234.photobucket.com/albums/ff408/BrUnOXaVIeR/UE-Function_zps4b685225.jpg~original

Now you have a very compact custom node to quickly add health to your character’s stats, nice and clean.
Simply drag&drop your function to the main Graph and it will be drawn as a single node:

http://i1234.photobucket.com/albums/ff408/BrUnOXaVIeR/UE-FuncCall_zpsc285f1b0.jpg~original

Note that you can create many different Function graph for any puposes you may have with your long SaveStats struct. You can create a function node to add health, remove health, increase attack power, and so on. This helps to keep your Blueprint graph organized and clean.

Awesome! Thanks for your help!

where did u set up the functions (add health) and where can i call them to make my item working?

where did u set up the functions (add health) and where can i call them to make my item working?