In terms of player location on the machine, so it doesn't start from the original game load point, I store player x,y in a global variable when you leave the layout and set player position to these variables when returning to the layout.
In terms of global variables, they should all be saved if you have 'included' them on each event sheet so that they are used. Even when switching between layouts they are global so should remain the same. Also make sure you don't have any random reset global variable actions in there.