Save Games are a bit fickle, you can generally add stuff to it, but if you change or delete something within the variable is not read the same
Say for instance you save a vector for “location” , Delete it and make another and call it “PlayerLocation”
Inside the actual save file it might save something like
00x000001 = 0,0,0
Then when you make the new variable although used in the exact same way, Might save as something differently internally
00a000002 = 0,0,0
When you go to load the old save game where it used to be called location before it was deleted and added again as PlayerLocation
it’s gonna look for the information at 00a000002 instead of the actual location of 00x0000001
This is of course an oversimplification of what’s happening and i don’t pretend to know half of it… this is my assumption, i do know however if you just rename things it’s fine because it’s using pointers and such behind the scenes, and adding stuff it doesn’t care that information will just be empty on old saves where it didn’t exist
Some stuff worth looking at