Перейти к содержимому

Данные MultiPersistent

MultiPersistent — это функция Ren’Py, позволяющая отдельным играм обмениваться данными друг с другом. Она в основном используется сериями из нескольких частей, где продолжение должно прочитать ваш выбор и прогресс из предыдущей части.

Когда разработчик игры создаёт объект MultiPersistent, он назначает ему общий идентификатор (обычно строку типа домена, например "mygameseries.example.com"). Любая игра, использующая тот же идентификатор, может читать и записывать один и тот же общий файл данных.

Например, серия визуальных новелл из двух частей может работать так:

  1. Глава 1 игры — По мере прохождения игра сохраняет ваш выбор, романтические линии и сюжетные флаги в файл MultiPersistent
  2. Глава 2 игры — При запуске продолжение считывает тот же файл, чтобы импортировать ваши решения и создать персонализированное продолжение истории

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

Данные MultiPersistent обычно включают:

  • Выбор в сюжете и решения на развилках
  • Выбор романтических линий
  • Статистику отношений с персонажами
  • Флаги завершения (какие концовки вы видели)
  • Любые другие данные, которые разработчик решит передать

Spark хранит файлы MultiPersistent в специальном каталоге multipersistent внутри папки данных Ren’Py. Этот каталог общий для всех игр, что позволяет разным играм получать доступ к данным друг друга — так же, как это задумано Ren’Py на настольных платформах.

Когда синхронизация iCloud включена, Spark автоматически синхронизирует ваши данные MultiPersistent между устройствами. Это значит, что если вы закончили Главу 1 на iPhone, Глава 2 на iPad сможет подхватить ваш выбор без ручного переноса.

  • Эпизодические визуальные новеллы — Игры, выходящие главами, где каждая новая глава считывает прогресс предыдущей
  • Игры общей вселенной — Отдельные игры в одном мире, которые разблокируют бонусный контент на основе того, что вы прошли
  • Импорт в сиквелы — Прямое продолжение, которое адаптирует начало в зависимости от того, как вы прошли оригинал

Если игра не определяет данные MultiPersistent из другой игры:

  1. Убедитесь, что обе игры были запущены — Первая игра должна быть пройдена и данные MultiPersistent сохранены, прежде чем продолжение сможет их прочитать
  2. Проверьте синхронизацию iCloud — Если играете на разных устройствах, дождитесь завершения синхронизации
  3. Проверьте совместимость игр — Обе игры должны использовать один и тот же идентификатор MultiPersistent, который задаётся разработчиком. Если разработчик изменил идентификатор между релизами, данные не будут переданы автоматически