ну грубо говоря. ситуация такая. представим себе любую игру где есть много игроков и много событий. допустим я храню данные о состоянии мира и состоянии игроков в разных файлах. если например раздельно сохранять мир и игроков то мне кажется что может получится рассинхрон между двумя этими сущностями. допустим там один файл сохранится, а другой нет из-за нехватки места. другой момент, допустим есть некоторые действия которые могут происходить только последовательно. допустим игрок открывает дверь, проходит через нее, закрывает дверь. если опять же разделять сохранение игрока и мира то может получится что игрок допустим, пройдет через дверь не открывая её или что-то в этом роде. т.е. наверное основной аспект это как атомарно записывать в несколько файлов. и момент, допустим что действия постоянно происходят и я не могу записывать каждое действие на диск, это слишком медленно. сохранять мир раз в некий промежуток времени тоже не вариант т.к. это придется замораживать весь мир, сохранять, а это может занять 2-3 секунды и это будет заметно игрокам. в теории можно создать что-то вроде журнальной системы, а все изменения мира представить в виде действий. журнал копит изменения и в бекграунде их сохраняет раз в некий прометужок времени.