How does saving a game actually work?
By writing down enough state to reconstruct the world, and the hard part is deciding what "enough" is — which is why some games let you save anywhere and others only at checkpoints.
What a save file contains. Not a snapshot of memory, but a serialised description: your position and stats; inventory; quest and flag states; which enemies are dead and which containers opened; world changes you caused; settings and progression; and a version number so the game can migrate old saves after a patch.
Why save-anywhere is hard. To restore an arbitrary moment you must capture everything currently in motion — every enemy's exact position and internal state, in-flight projectiles, active animations, partially played audio, physics objects, timers, and where every script had reached. Much of that is transient data never designed to be written down. Games supporting it must build serialisation into every system from the start, which is an architectural commitment, not a feature toggle.
Why checkpoints are easier. At a checkpoint the designer guarantees a known, quiet state — nothing in flight, enemies at defaults, scripts between steps. The save need only record progression, and everything else is rebuilt from the level's initial conditions.
The compromises you see:
Autosave at triggers, which are checkpoints in all but name.
Suspend or rest points, writing a full memory snapshot to disk — fast, large, and frequently invalidated by a patch.
Quicksave with restrictions, forbidden in combat or during scripted sequences.
Why saves corrupt. Writing while power is lost, or crashing mid-write, leaves a partial file. Robust games write to a temporary file and rename it only on success, and keep a rotating backup. Cloud sync adds a second failure mode: two devices both writing, producing the conflict prompt.
Why old saves break after updates. Adding or reordering fields changes the format; developers must write migration code, and sometimes decide not to.
Practical advice: keep manual saves in rotation rather than overwriting one, and back up the save folder before installing mods.