Найти в Дзене

Как спасти сохранения игр при вылетах

Добрый день, товарищи!
Эту статью я хочу посвятить такой неприятной теме как вылеты игр в самый неподходящий момент. Поэтому сегодня я расскажу как написать простой bat-ник, который поможет спасти ваши драгоценные сохранения. Приятного просмотра.
Оглавление
Бсод собственной персоной
Бсод собственной персоной

Добрый день, товарищи!

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

С этим столкнулся и я, а вылеты исправить возможности не было.

Суть проблемы была такова: Раз в час (а иногда и многим чаще) ноут просто улетал в синий экран смерти. Как оказалось, дело было в материнке, и без сервиса это было никак не поправить.

Помнится, тогда я проходит Borderlands 3, и перспектива постоянных вылетов совершенно не радовала. Опасаясь за свои сохранения (и первые пару раз до решения проблемы успешно их поломав) я решил найти выход. И такой выход нашелся - Программа "Сохранятель Сохранений", как я его назвал.

Думаю, это можно считать костылем, ведь если у вас что то вылетает, то нужно бороться с причиной, а не с последствиями, но, надеюсь, кому то это будет полезно.

1. Подготовимся

Сразу оговоримся, что это - не программа на паскале. Сегодня мы пишем Bat-файл в текстовом документе.

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

Писать будем в "самой лучшей IDE"
Писать будем в "самой лучшей IDE"

2. Условное техническое задание

Для начала определимся, что точно будет делать наша программа

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

Я решил так: раз моя система была не стабильна - буду копировать файлы в облако.

Сказано - сделано, начнем писать.

3. Начнем писать SaveSaver

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

-3

Файлы Bat работают с системой, поэтому код будет не похож на код Паскаля.

Если вы, конечно, хотите чтобы копирование происходило сразу - эту строку кода можете пропустить.

Время задается в секундах, соответственно первое копирование произойдет спустя 5 минут.

4. Копирование сохранений

Для хранения файлов в облаке я установил на ноутбук Яндекс.Диск, его объема вполне хватит, чтобы все сохранения держались там.

Для примера, давайте создадим папку Save в документах (так как чаще всего сохранения хранятся именно там) и скопируем ее содержимое в папку Я.Диска. Внимание! папка должна быть не пустая!

Дальше нам нужен такой код:

Код длинный, но в основном его занимают пути до папок
Код длинный, но в основном его занимают пути до папок

Поясню этот код: Здесь используется метка :save - команда для создания своеобразного цикла. Имя метки вместо save можно использовать любое.

Далее, d|XCOPY - Собственно команда копирования. d отвечает за директорию (папку), но так же можно выбрать f - файл, если папку копировать нет необходимости.

Далее идет первый путь, где имя пользователя User1 заменяется на ваше имя пользователя. Потом идет второй путь с непонятными бессмысленными знаками. Это - задание даты и времени в имени скопированного каталога. Как это будет выглядеть на выходе я вам покажу.

5. Завершаем код

Конечные строки кода
Конечные строки кода

Здесь мы снова видим таймаут, на этот раз на пол часа. Редактировать эту цифру вы можете по своему желанию, но вам ведь не надо, чтобы сохранения копировались каждые 5 секунд?

Команда goto save возвращает нас к метке :save, таким образом создавая цикл.

Pause, что логично, отвечает за паузу.

Для сохранения кода нам нужно поменять формат файла. Сейчас у нас .txt, чтобы получился Bat-ник нужно просто заменить .txt на .bat при сохранении

Не забудьте поменять формат
Не забудьте поменять формат

Время проверить работу программы.

6. Тест

Работа программы в командной строке выглядит так
Работа программы в командной строке выглядит так

Кстати еще один плюс - то, что таймаут можно пропустить, тогда копирование произойдет сразу. Так же идет удобный обратный отсчет.

Копии
Копии

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

7. Заключение

Чтож, вот мы с вами и написали так называемый Сохранятель сохранений, весь код выглядит примерно так:

Весь код
Весь код

Для вашего удобства я залью этот код на Яндекс.Диск, скачать вы его можете по ссылке ниже:

Скачать SaveSaver с Яндекс.Диска

-10

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

По возможности я попросил бы подписаться и оценить публикацию. Сейчас это критически важно для развития канала. Так то!

Доброго вам всем здоровьица в эти трудные времена!