Голосование

Мне ретроачивменты...

Нравятся
0 (0%)
Не нравятся
0 (0%)

Проголосовало пользователей: 0

Автор Тема: Retroachievements  (Прочитано 144 раз)

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

Оффлайн Tequilla_Killer

  • Пользователь
  • Сообщений: 527
    • Просмотр профиля
Retroachievements
« : 21 Июнь 2026, 21:32:06 »
Как это вообще работает? Каким образом эмулятор чекает, сверяет, засчитывает? Я не могу логичный алгоритм представить.

Оффлайн DGanger

  • Пользователь
  • Сообщений: 88
    • Просмотр профиля
Retroachievements
« Ответ #1 : 21 Июнь 2026, 22:16:09 »
Как это вообще работает? Каким образом эмулятор чекает, сверяет, засчитывает? Я не могу логичный алгоритм представить.
В эмуляторе доступно полное состояние игры в любой момент. Ретроачивменты требуют только оригинальные ромы. Поэтому необходимое состояние игры для получения ачивмента можно определить конкретно. А какие конкретно у вас вопросы возникают?

Оффлайн Tequilla_Killer

  • Пользователь
  • Сообщений: 527
    • Просмотр профиля
Retroachievements
« Ответ #2 : 21 Июнь 2026, 22:45:04 »
А какие конкретно у вас вопросы возникают?
Русские версии тоже работают, те что я пробовал. Я бегло глянул по ачивкам. В основном, конечно, все просто - закончить уровень без дамага и тому подобное. Наверное, такое действительно легко считать из состояния. Но вот в пес 6 на пс2: сделать идеальный хет-трик Давидом Вильей. То есть забить правой ногой, левой и головой, еще и Давидом Вильей. А в Симфонии Ночи на экране счетчик типов врагов, нужно со всеми видами повстречаться для достижения. Как они так влезают в игру?

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5680
    • Просмотр профиля
Retroachievements
« Ответ #3 : 21 Июнь 2026, 22:49:31 »
Каким образом эмулятор чекает, сверяет, засчитывает?
Я думал, что там есть проверки на выполнение кода по заданному адресу, но похоже проверятся только RAM. Здесь об этом https://github.com/RetroAchievements/RAInterface/wiki/Creating-a-new-emulator и самое главное RA_InstallMemoryBank(), чтобы предоставить доступ к RAM эмулируемой системы, например, в RAVBA такой код. Где-то должны быть правила, по которым засчитываются достижения, состоящие из проверки значений RAM.
Русские версии тоже работают, те что я пробовал.
Не знаю как с образами, но для ромов у них проверки на хеши и там встречаются хаки.

UPD: Для разработчика ачивок https://docs.retroachievements.org/developer-docs/getting-started-as-an-achievement-developer.html. Мне следовало начать поиск с этого :)
« Последнее редактирование: 21 Июнь 2026, 23:45:56 от Sharpnull »