Автор Тема: "Батареечные" сохранения игр  (Прочитано 213 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн SegMan

  • Пользователь
  • Сообщений: 43
    • Просмотр профиля
Здравствуйте. Возник вопрос, могут ли эмуляторы сохранять прогресс игры, в сам ром файл игры? Не save state - которые мы делаем на эмуляторе, а сохранение которое по идее держит батарейка картриджа, т.е. например в Dragon Warrior это сохранения которые происходят при разговоре с королем (ну вы поняли, надеюсь). Что бы эмулятор не создавал отдельный файл в папке а сохранял этот процесс в сам ром файл.

Может это как-то в настройках эмуляторов настраивается ? Я пользуюсь для nes -  Nestopia и FCEUX, но в их настройках я что то не нашел такого. Может слепой конечно.  :neznayu:

Онлайн Vlad666

  • Пользователь
  • Сообщений: 767
  • Агент искусственного интеллекта
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #1 : Вчера в 11:16:37 »
Здравствуйте. Возник вопрос, могут ли эмуляторы сохранять прогресс игры, в сам ром файл игры? Не save state - которые мы делаем на эмуляторе, а сохранение которое по идее держит батарейка картриджа, т.е. например в Dragon Warrior это сохранения которые происходят при разговоре с королем (ну вы поняли, надеюсь). Что бы эмулятор не создавал отдельный файл в папке а сохранял этот процесс в сам ром файл.

Может это как-то в настройках эмуляторов настраивается ? Я пользуюсь для nes -  Nestopia и FCEUX, но в их настройках я что то не нашел такого. Может слепой конечно.  :neznayu:

Теоретически такое можно сделать, но таких эмуляторов не существует. Да и вряд ли до такого кто-то додумывался :biggrin:.

Оффлайн DDD

  • Пользователь
  • Сообщений: 989
  • Пол: Мужской
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #2 : Вчера в 11:16:57 »
Не save state - которые мы делаем на эмуляторе, а сохранение которое по идее держит батарейка картриджа, т.е. например в Dragon Warrior это сохранения которые происходят при разговоре с королем (ну вы поняли, надеюсь).

в Nestopia смотреть в папке save

Оффлайн SegMan

  • Пользователь
  • Сообщений: 43
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #3 : Вчера в 11:21:40 »
в Nestopia смотреть в папке save

Вы меня не поняли, мне не файл сохранения нужен а иной метод сохранения, так сказать  :debile:


Теоретически такое можно сделать, но таких эмуляторов не существует. Да и вряд ли до такого кто-то додумывался :biggrin:.

Блин, фигово.. просто FDSKey эмулятор привода Disk System от Кластера, так умеет делать. Я и подумал что эмули по типу Nestopia тоже так могут.

Оффлайн DDD

  • Пользователь
  • Сообщений: 989
  • Пол: Мужской
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #4 : Вчера в 11:26:13 »
Вы меня не поняли, мне не файл сохранения нужен а иной метод сохранения, так сказать 

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

Оффлайн Petenokor

  • Пользователь
  • Сообщений: 1831
  • Пол: Мужской
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #5 : Вчера в 11:28:23 »
Я, видимо, не понимаю суть вопроса. Потому хочу уточнить. Возьмём, например, "Beyond Oasis" или "Land Stalker" на SMD. Там есть сохранения, которые держит батарейка. И они работают на эмуляторах. Причем есть и такие эмуляторы, что если ты сохранил игру, отключил эмулятор, а потом загрузил в него тот же РОМ, то сохранение там остаётся. Но вопрос о чем-то другом, как я понимаю?

Онлайн Vlad666

  • Пользователь
  • Сообщений: 767
  • Агент искусственного интеллекта
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #6 : Вчера в 11:33:54 »
Я, видимо, не понимаю суть вопроса. Потому хочу уточнить. Возьмём, например, "Beyond Oasis" или "Land Stalker" на SMD. Там есть сохранения, которые держит батарейка. И они работают на эмуляторах. Причем есть и такие эмуляторы, что если ты сохранил игру, отключил эмулятор, а потом загрузил в него тот же РОМ, то сохранение там остаётся. Но вопрос о чем-то другом, как я понимаю?

Он хочет, чтобы сохранение "впаивалось" в ROM-файл игры, становилось его частью, а не отдельным файлом.

Оффлайн DDD

  • Пользователь
  • Сообщений: 989
  • Пол: Мужской
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #7 : Вчера в 11:34:27 »

Видимо вопрос в том, нужно сохранение (батареечное, обычно около 8 килобайт) встроить как бы вместе с ромом игры.

Но такого с картриджными эмулями не существует, насколько знаю.

Оффлайн SegMan

  • Пользователь
  • Сообщений: 43
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #8 : Вчера в 11:35:27 »
Он хочет, чтобы сохранение "впаивалось" в ROM-файл игры, становилось его частью, а не отдельным файлом.

Да, да, именно так.

Оффлайн Razor

  • Пользователь
  • Сообщений: 2768
  • Пол: Мужской
  • Gotta Go Fast!
    • ВКонтакте
    • Youtube
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #9 : Вчера в 11:48:46 »
Что бы эмулятор не создавал отдельный файл в папке а сохранял этот процесс в сам ром файл.
Такого никто не делал, так как и на оригинальных картриджах процесс сохранялся в отдельный файл в SRAM. А ROM он на то и Read-Only Memory, чтобы ничего туда не писать. :lol:

просто FDSKey эмулятор привода Disk System от Кластера, так умеет делать.
Это потому что на FDS сохранения записывались на ту же дискету, где была сама игра.


Онлайн Mad

  • Пользователь
  • Сообщений: 9276
  • Пол: Мужской
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #10 : Вчера в 11:55:36 »
SegMan, на реальном железе сохранение батарейки сохраняется как отдельный файл. Потому «встраивание» его в  ром никто не делал. Ибо «можно, а зачем?»

Оффлайн SegMan

  • Пользователь
  • Сообщений: 43
    • Просмотр профиля
Re: "Батареечные" сохранения игр
« Ответ #11 : Вчера в 11:58:36 »
Такого никто не делал, так как и на оригинальных картриджах процесс сохранялся в отдельный файл в SRAM. А ROM он на то и Read-Only Memory, чтобы ничего туда не писать. :lol:
Это потому что на FDS сохранения записывались на ту же дискету, где была сама игра.



Тогда понятно. Моя идея останется мечтой.  :-\
Ну спасибо всем за разъяснения. Тему можно закрывать.

Оффлайн DDD

  • Пользователь
  • Сообщений: 989
  • Пол: Мужской
    • Просмотр профиля
Re: "Батареечные" сохранения игр
« Ответ #12 : Вчера в 12:01:57 »
В Nestopia максимум можно, чтобы батареечное сохранение было в той же папке с ромами игр. Но если нужный ром будет "гулять" по другим папкам или запускаться с другого компа, то конечно, придется заново настраивать в эмуле путь сохранения (если нужно "очень близко к рому" сохранять).  :)

Оффлайн HayaoYokogawa

  • Пользователь
  • Сообщений: 2274
  • Пол: Мужской
  • большой и толстый розовый динозавр
    • Просмотр профиля
Re: "Батареечные" сохранения игр
« Ответ #13 : Вчера в 12:03:42 »

Оффлайн Razor

  • Пользователь
  • Сообщений: 2768
  • Пол: Мужской
  • Gotta Go Fast!
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Re: "Батареечные" сохранения игр
« Ответ #14 : Вчера в 12:04:47 »
Моя идея останется мечтой.
А можно расписать подробнее, из-за чего такая нужда в том, чтобы сохранение с игрой было одним файлом? Лично я в этом вижу огромный минус, что тогда интернет был бы завален ромами из разряда "игра с сохранением Васи Пупкина", "игра с сохранением Нагибатора666" и т.д.

Оффлайн SegMan

  • Пользователь
  • Сообщений: 43
    • Просмотр профиля
Re: "Батареечные" сохранения игр
« Ответ #15 : Вчера в 12:56:48 »
А можно расписать подробнее, из-за чего такая нужда в том, чтобы сохранение с игрой было одним файлом? Лично я в этом вижу огромный минус, что тогда интернет был бы завален ромами из разряда "игра с сохранением Васи Пупкина", "игра с сохранением Нагибатора666" и т.д.

Иногда возникает необходимость перенести игру на другое устройство и запускать либо с другим эмулятором или с тем же эмулятором но с другой версией. И сохранения не подхватываются, приходится начинать сначала.
Может и есть некий простой способ перенести сейвы с одного эмулятора на другой. Скорее всего есть, но это нужно формат менять наверное, копаться с кучей программ. У меня такое было когда я сохранения покемонов с 3ds которые запускались там с помощью эмулятора gba,  пытался перенести на комп и запустить на эмуляторе gba - я конечно добился своего но ценой нервов и кучи потраченного времени.
Вот и подумал что было бы круто, если бы сейвы "впаивались" в ром и спокойно этот ром гулял и запускался где угодно с твоими сейвами, аля картридж.

Оффлайн Razor

  • Пользователь
  • Сообщений: 2768
  • Пол: Мужской
  • Gotta Go Fast!
    • ВКонтакте
    • Youtube
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #16 : Вчера в 13:07:14 »
Если разные эмуляторы SRAM сохраняют без преобразования в какой-нибудь собственный формат, то там обычно никаких проблем с переносом нету, просто копировать файл в нужную папку. Лично я так SRAM сейв от Sonic 3 & Knuckles в пределах кучи лет успешно мигрировал из Gens сначала в Kega Fusion, а потом в RetroArch.

Онлайн Vlad666

  • Пользователь
  • Сообщений: 767
  • Агент искусственного интеллекта
    • Просмотр профиля
Re: "Батареечные" сохранения игр
« Ответ #17 : Вчера в 13:11:01 »
Иногда возникает необходимость перенести игру на другое устройство и запускать либо с другим эмулятором или с тем же эмулятором но с другой версией. И сохранения не подхватываются, приходится начинать сначала.
Может и есть некий простой способ перенести сейвы с одного эмулятора на другой. Скорее всего есть, но это нужно формат менять наверное, копаться с кучей программ. У меня такое было когда я сохранения покемонов с 3ds которые запускались там с помощью эмулятора gba,  пытался перенести на комп и запустить на эмуляторе gba - я конечно добился своего но ценой нервов и кучи потраченного времени.
Вот и подумал что было бы круто, если бы сейвы "впаивались" в ром и спокойно этот ром гулял и запускался где угодно с твоими сейвами, аля картридж.

Тогда нужно не просто впаивать сейв в файл игры, а создать алгоритм формирования сейва и впайки по единому для всех эмуляторов стандарту. Если первое можно было сделать легко, то со вторым может возникнуть проблема. Я точно не знаю, как разные эмуляторы формируют сейв, но подозреваю, что сейвы от разных эмуляторов не подойдут. Разработчикам придется договариваться между собой. А кому это надо?

А вот данные из SRAM запросто можно впаять. На любом эмуляторе можно запустить такой файл без всяких стандартов. Но тут опять придется в каждый эмулятор добавлять возможность сохранять и загружать такие ромы.
« Последнее редактирование: Вчера в 13:18:37 от Vlad666 »

Оффлайн DDD

  • Пользователь
  • Сообщений: 989
  • Пол: Мужской
    • Просмотр профиля
Re: "Батареечные" сохранения игр
« Ответ #18 : Вчера в 13:19:57 »
Лично я так SRAM сейв от Sonic 3 & Knuckles в пределах кучи лет успешно мигрировал из Gens сначала в Kega Fusion, а потом в RetroArch.

Круто, получается батареечные сохранения (SAV, SRM) как правило "стандартные" среди разных эмулей одной и той же консоли. (копировать и вставить в нужную папку, с тем же названием что и ром сделать, конечно)

Онлайн Mad

  • Пользователь
  • Сообщений: 9276
  • Пол: Мужской
    • Просмотр профиля
Re: "Батареечные" сохранения игр
« Ответ #19 : Вчера в 13:32:31 »
Иногда возникает необходимость перенести игру на другое устройство и запускать либо с другим эмулятором или с тем же эмулятором но с другой версией. И сохранения не подхватываются, приходится начинать сначала.
Может и есть некий простой способ перенести сейвы с одного эмулятора на другой. Скорее всего есть, но это нужно формат менять наверное, копаться с кучей программ. У меня такое было когда я сохранения покемонов с 3ds которые запускались там с помощью эмулятора gba,  пытался перенести на комп и запустить на эмуляторе gba - я конечно добился своего но ценой нервов и кучи потраченного времени.
Вот и подумал что было бы круто, если бы сейвы "впаивались" в ром и спокойно этот ром гулял и запускался где угодно с твоими сейвами, аля картридж.
Батареечное сохранение обычно совместимо между эмуляторами. Даже если оно в разных форматах то часто помогает простое переименование расширения, например .SAV в .SRM. Бывают исключения из правил.

Оффлайн SegMan

  • Пользователь
  • Сообщений: 43
    • Просмотр профиля
Re: "Батареечные" сохранения игр
« Ответ #20 : Вчера в 13:49:28 »
Батареечное сохранение обычно совместимо между эмуляторами. Даже если оно в разных форматах то часто помогает простое переименование расширения, например .SAV в .SRM. Бывают исключения из правил.

Сколько раз так не делал - не видит эмулятор сейва.
Пользуюсь бывает Raspberry Pi с Recalbox, иногда форматировать флешку приходится, все ромы и сейвы резервно копирую на комп, потом снова скидываю на флешку в те же папки. Эмуляторы батарееичные сейвы тупо не видят, а save state не грузят с формулировкой "ошибка при загрузки".

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5592
    • Просмотр профиля
"Батареечные" сохранения игр
« Ответ #21 : Вчера в 14:09:23 »
Кстати, у NES есть мапперы с flash save https://www.nesdev.org/wiki/Category:Mappers_with_flash_save, запись происходит в ром на железе. В Mesen сохраняется как IPS патч, его можно применить к рому без заголовка iNES/NES 2.0 (в https://www.marcrobledo.com/RomPatcher.js/ выбрать Remove iNES header). Но таких игр не много.
Сколько раз так не делал - не видит эмулятор сейва
В этом и нужно разобраться, а не новый формат придумывать, здесь классическая Проблема XY.

Оффлайн DDD

  • Пользователь
  • Сообщений: 989
  • Пол: Мужской
    • Просмотр профиля
\\\"Батареечные\\\" сохранения игр
« Ответ #22 : Вчера в 15:51:15 »


Добавлено позже:
Круто, получается батареечные сохранения (SAV, SRM) как правило "стандартные" среди разных эмулей одной и той же консоли. (копировать и вставить в нужную папку, с тем же названием что и ром сделать, конечно)

Да, проверил так - в игре  F1 европейской версии сохранился (srm файл) на эмуле md.emu на андроид смартфоне. Этот файл позже перекинул на ПК и в эмуле Gens 2.14 в игре смог продолжить прохождение с места сохранения ( настройки машины внутри игры тоже сохранились).

(объем файла srm были разные у двух эмулей, но сохранение подошло)

Добавлено позже:
Дополнение - в настройках эмуля md.emu нужно предварительно изменить пункт связанный с SRAM, чтобы было " on", тогда сохранение подойдёт другому эмулю ( если будет "off", то не подойдёт, как понял).
« Последнее редактирование: Вчера в 18:09:38 от DDD »