If you want total control over your save data and save files, you would use a combination of Dictionaries and/or Arrays, and Local Storage. My current project has 3 save slots I am in total control of, can get or write to any part of them at any time, with copy/delete functionality as well. If this is what you're looking for, I suggest not using Construct's built-in save functionality. Far as I'm concerned that's just for debugging.
Tokinsom Can I ask, are you saving information about the position / state of objects in a layout? Say there are elements in a layout the player can interact with: coins to be collected, enemies to be killed, smashable crates. Say you want to save the state of the layout after the player has played through collecting some items, killing some enemies, smashing some crates. If the player leaves the layout then returns later, how can I load the previous state of the layout, rather than loading the default state.
What would you consider best practice in this situation to save the layout's state, including the position of objects within the layout, allowing to load that state at a later time?
The Persist behaviour works up to a point. It saves the state of objects within the layout, but I don't think its possible to revert back to the object's default state, if for example the player wanted to restart the level to play through from the beginning again. The Persist behaviour would work well if you could disable / enable it under different conditions.
The Save/Load function isn't ideal because it will load the old state and wont reflect points / coins the player has accumulated after leaving the layout.