Проблема переноса игровых сохранений между несколькими устройствами актуальна для многих пользователей. Несмотря на то что Steam Cloud успешно решает эту задачу для большинства проектов, существуют ограничения, с которыми можно столкнуться на практике. Один из примеров — игра Football Manager 26. В ней реализована синхронизация через облако Steam, однако система имеет лимит объема данных, составляющий 10 ГБ. При достижении этого порога процесс синхронизации прекращается, что может привести к потере прогресса, если пользователь не заметит проблему вовремя, находясь вдали от дома.

Использование Ludusavi и Rclone для автоматизации копий
Чтобы избежать зависимости от облачных лимитов Steam и гарантировать сохранность данных, автор решил использовать собственный домашний сервер в качестве единого хранилища. Для этой цели были выбраны инструменты Ludusavi и Rclone.
Ludusavi — это бесплатное программное обеспечение с открытым исходным кодом, которое автоматически определяет расположение файлов сохранений для тысяч игр, опираясь на базу данных PCGamingWiki. Программа работает без сложной предварительной настройки, самостоятельно обнаруживая установленные игры, такие как Football Manager 26, на ноутбуке и стационарном компьютере.
Интеграция с Rclone позволяет превратить локальный инструмент резервного копирования в полноценное облачное решение. Настроенный профиль направляет данные на SMB-ресурс, работающий в контейнере Samba на сервере Proxmox с файловой системой ZFS. Система настроена на автоматическую проверку соответствия локальных и серверных копий перед выполнением каждой операции. Если файлы различаются, Ludusavi предупреждает пользователя, предотвращая случайную перезапись актуальных данных.

Обеспечение удаленного доступа с помощью NetBird
Одной из ключевых задач при организации такой системы был доступ к серверу вне дома. Поскольку SMB-ресурс не выведен в открытый интернет, для безопасного подключения используется mesh-VPN на базе NetBird. Это решение, развернутое на собственном оборудовании, обеспечивает доступ к домашней сети через протокол WireGuard.

В настройках NetBird Samba-ресурс сконфигурирован как сетевой ресурс, что упрощает развертывание, исключая необходимость установки VPN-клиента на каждый компонент инфраструктуры. Хост Proxmox перенаправляет трафик, поступающий с ноутбука или других устройств, на внутренний LAN-адрес контейнера. Благодаря унификации сетевых настроек конфигурация Rclone остается идентичной как при работе в домашней сети, так и при удаленном подключении.

Особенности синхронизации между Windows и Linux
Дополнительная сложность возникла из-за того, что основной компьютер автора работает под управлением CachyOS (на базе Linux), где игра запускается через слой совместимости Proton, а ноутбук — под управлением Windows. Пути к файлам сохранений в этих ОС существенно различаются: на Windows это системная папка «Документы», а на Linux — аналогичная папка, скрытая внутри префикса Proton.

Для решения этой проблемы в Ludusavi были использованы «перенаправления» (redirects). На настольном ПК автор настроил маппинг, который соотносит папку «Документы» внутри префикса Proton с путем, используемым в Windows. Это позволяет системе воспринимать сохранения с обоих устройств как единый набор данных, обеспечивая корректное восстановление прогресса вне зависимости от используемой операционной системы.

Таким образом, создание собственной системы синхронизации позволило преодолеть ограничения облачных сервисов, сохранив при этом удобство автоматического обмена данными для всех игровых сессий.

Почему Steam Cloud — не панацея
Проблема синхронизации Football Manager 26 выходит за рамки простого достижения лимита в 10 ГБ. Важной особенностью механики сохранения в этой серии является то, что процесс загрузки данных в облако активируется только в момент выхода игрока из приложения. Если объем сохранения превышает установленный буфер, Steam Cloud просто перестает выполнять свою функцию, не оповещая пользователя о сбое. Это создает ложное чувство защищенности: игрок может уехать в путешествие, будучи уверенным, что прогресс синхронизирован, и лишь на месте обнаружить, что актуальный файл остался на домашнем ПК, а в облаке висит версия многомесячной давности.

Хотя многие геймеры выбирают альтернативные пути решения — например, использование USB-накопителей или ручную загрузку сейвов в облачные хранилища вроде Google Drive и Dropbox, — эти методы требуют дисциплины и постоянного контроля. Использование домашнего сервера превращает этот процесс в «бесшовный» фон, избавляя от необходимости носить с собой физические носители или доверять сторонним публичным сервисам.

Особенности работы Ludusavi и Rclone
Привлекательность Ludusavi заключается в его глубокой интеграции с базой данных PCGamingWiki. Это избавляет пользователя от ручного поиска путей к файлам — инструмент самостоятельно обнаруживает подавляющее большинство установленных игр. В текущей конфигурации системы Ludusavi выполняет роль интеллектуального посредника: перед каждой операцией он проводит сверку хэш-сумм или дат модификации локальной и серверной копий. Если обнаруживается конфликт (например, если файлы были изменены на обоих устройствах без завершения сессии), программа выдает предупреждение, вместо того чтобы совершить деструктивное действие и перезаписать ценные данные.

Сетевая архитектура и NetBird
Решение использовать NetBird для удаленного доступа продиктовано требованиями безопасности: открытие SMB-ресурса для прямого доступа из интернета является крайне рискованной практикой. Используя self-hosted вариант NetBird, автор организовал туннелирование через протокол WireGuard. Важный нюанс заключается в способе конфигурации: Samba-ресурс был настроен в панели управления NetBird как сетевой ресурс (network resource), а не как отдельный peer. Это избавляет от необходимости устанавливать клиентское ПО на каждое устройство в сети. Сервер Proxmox берет на себя функции шлюза, прозрачно пробрасывая входящий трафик от удаленного ноутбука к внутреннему LAN-адресу контейнера. В результате Rclone «видит» одинаковый сетевой путь к хранилищу независимо от того, находится ли пользователь в локальной сети или за тысячи километров от дома.

Синхронизация между ОС: маппинг путей
Специфика работы с Proton добавляет еще один уровень сложности, так как структура каталогов в Windows и Linux фундаментально различается. Без использования механизма «перенаправлений» (redirects) Ludusavi рассматривал бы файлы в папке Documents на Windows и файлы внутри префикса Proton на CachyOS как совершенно разные объекты. Установка маппинга позволила сопоставить эти пути, благодаря чему Ludusavi автоматически приводит структуру бэкапов к единому стандарту. Это позволяет комфортно переключаться между двумя системами, не заботясь о том, где именно в текущий момент находятся файлы игры — инструмент сам «понимает», что должен синхронизировать содержимое двух разных директорий как единый игровой прогресс.







