Реверс-инжиниринг старых игр — это всегда немного лотерея. Вы ныряете в дебри оперативной памяти NES с одной целью, а всплываете с чем-то совершенно иным. Это как морской дайвинг - не знаешь заранее, что интересное попадется.
В этом выпуске мы рассмотрим The Krion Conquest — жесткая и красивая 8-битная игра, на которую когда-то было потрачено много времени и нервов чтобы пройти ее на приставке. Сейчас же с эмулятором задачу сначала выбрал классическую: найти через RAM Search таймер неуязвимости, чтобы облегчить прохождение. Просеиваю байты, отслеживаю изменения значений при ударах и отсекаю лишний цифровой шум.
Но код игры подкинул сюрприз. Вместо того чтобы сделать героя неуязвимым, мы случайно нашли «Рубильник Судного Дня».
Один замороженный адрес памяти (ячейка 600) превратил хардкорный экшен в... медитативный симулятор ходьбы. Мы буквально отменили существование всех врагов на уровне, оставив лишь пустые коридоры и одинокого босса, который явно не понимает, куда делась его армия.
Это наглядный урок того, почему в памяти консоли так интересно копаться — никогда не знаешь, какой жанр игры ты получишь, изменив всего одну переменную.
Jurassic Park картридж отличный, комплект с мануалом 🙌 Помню игра Парк Юрского периода в детстве очень нравилась, но вот проходил я её или нет на своей Dendy не помню... Благо выходных еще много, попробую оживить воспоминания;)
При погружении в изучение языка прогаммирования NESFab для NES нашел игру, которая на нем написана. И решил рассмотреть её.
Mosh Lift - проект, который доказывает: в 2023 году 8-битная приставка способна выдавать такую физику, что даже видео захват не передает всю динамику, от которой кружится голова. В главной роли — безумный гитарист, чья механика движений ломает очень забавная (особенно если зажать «Турбо»).
Это не обзор кода, это тест-драйв цифрового безумия, которое так и просится на экраны смартфонов. Залетайте посмотреть, как выглядит современный инди-рок на железе 80-х, и ловите лайфхак, как скачать эту игру бесплатно.
Привет всем. Хотелось поделиться своим хобби, которое, уж так вышло, крепко свзалось с видеоиграми.
К мозаике я пришел, перепробовав довольно много всего: от рисования и раскрашивания, до лепки и моделирования. К несчастью, для почти всего нужен талант, коим я обделён. Времени свободного у меня достаточно много и, несмотря на тренажерный зал и гейминг, хотелось еще и какого-нибудь творчества. Случайно наткнувшись на Озоне на мозаику по популярным слэшерам, я подумал, что можно и попробовать.
Первую работу повесил все-таки на стену.
Довольно быстро я закончил с ней, она была довольно простой для сбора, всего около 25 цветов и размером меньше А3. Тогда мне в голову пришла идея, что создать такую схему для мозаики, в принципе, мне и самому под силу.
Я был слишком уверен в себе поэтому не стал мелочиться и сразу решил делать на А1. В качестве основы выбрал известный в узких кругах пейзаж.
Сразу скажу, совершил я огромное количество ошибок, начиная от размеров и количества цветов, до схемы с символами (они просто не пропечатывались и автоматом ставилась квадратная заглушка вместо нужного знака). На данный момент эту мозаику я так и не закончил. Её возможно доделать, но времени уйдет невероятное количество.
На данный момент готово чуть более четверти
Почти разочаровавшись как в себе, так и в мозаике, я чуть не бросил это дело, но в один момент ради шутки решил сделать двух персонажей «времени приключений». Немного осознав свои первые ошибки, я сделал схему и выкладку за день.
В то время у меня появилась мысль сделать огромную мозаику и повесить на одну из стен. Что же будет на ней я долго не мог выбрать, в итоге решил сделать некое подобие боевой арены с большим количество разных персонажей из игр, фильмов, сериалов. Помню, как переводил огромное их количество в мозаику, сидя ночами на работе. Большинство спрайтов находил на просторах интернета.
1/4
Для проверки выложил нескольких и понял, что для нормальной детализации они должны быть не менее 65 пикселей, что около 20 см. Даже на А1 с такими размерами много героев просто бы не поместилось. Идея отпала, хотя схемы персонажей все еще остались.
На этом этапе я опять застрял с идеей, что можно сделать. Как раз тогда же мой брат переезжал от родителей в свою квартиру и видя мои потуги, предложил сделать что-то на новоселье. Я знал, что он любил «Секиро» и хоть я ожидал, что получится не очень, все же сделал схему размера А2. Получилось, на удивление, неплохо. Второй такой же по размеру схемой, стала по игре «DOOM». Обе сейчас висят у него.
1/2
Там я опять совершал некоторые ошибки, которые тормозили сборку, главная из которых огромное количество цветов. Обычно, в стандартных покупных наборах около 30 разных цветов в своих же я делал по 150 для большей точности.
Однажды, просто листая ленту ВК, я наткнулся на группу, которая делала диорамы в рамках из 8 и 16-битных игр. Прикинув, что это идеальный вариант схем для мозаик, я попробовал сделать несколько таких. Как и всегда я столкнулся со сложностями, главной из которых был размер, второй количество цветов (в мазаике их чуть больше 400).
Понимаете, обычный размер экрана 8-битной игры это 256x224 пикселей, для 16 это 320х224, а в размерах я ограничен. Обычный, знакомый всем, Марио в высоту 32 пикселя, около 10 см, поэтому в своих схемах приходится буквально попиксельно менять размеры фона, дабы они поместились. Сейчас я стараюсь ограничиваться размерами А4 и А3.
1/3
На данный момент у меня готово более 20 схем из популярных NES и SEGA игр. Может когда-нибудь и дойдут руки до их сборки.
1/8
Некоторые даже уже напечатаны.
Первыми работами, которые я выложил из игр NES стали «Черный плащ» и заставка из «Чужого 3». Чужой, в итоге, превратился в магнит и перекочевал к брату на холодильник.
1/2
Все-таки размер А4 кажется маловатым
По итогу, я наконец разобрался, как правильно делать схемы и пояснения к ним. Несколько собранных схем ушло друзьям и родным, для себя же я так и не сделал схему, которую хочу. Периодически собираю разных персонажей и вешаю их на холодильник, но не оставляю мыслей о большой схеме с битвой героев.
1/6
На фото не видно, но для некоторых приходилось использовать стеклянную мозаику, а ее заказывать только из Китая.
В то же время захотел украсить свой подъезд. Очистил всё от застарелых объявлений по типу «продам гараж», сделал некое подобие уровня из Марио. Вроде бы никто в домовом чате не жаловался, правда все время воруют Марио, уже 4 раза пришлось доделывать.
В заключении могу сказать, что мозаика штука не слишком дешевая. Единственный магазин, который быстро и точно принимает заказы на нее, берет за пакетик 150-200 штук 12 рублей. На выкладку формата А1 требуется около 60 тысяч штук. Плюсом к этому, сама распечатка на холсте тоже крайне дорогая.
Выкладка, в принципе, очень медитативное занятие, хотя и требующее концентрации. Для себя же я решил, что в этот момент буду слушать аудиокниги. Начал с «Модели для сборки» с Владиславом Коппом, а сейчас слушаю «Инквизитор Эйзенхорн» Дэна Абнетта.
На данный момент я вернулся к своей первой схеме с пейзажем. Думаю все же закончить её, но чувствую, что она задержит меня на долгое время.
Игра, с интересной механикой, сделанная на этом языке (платная, но там же есть ссылка по которой скачивается бесплатно) https://morphcatgames.itch.io/mosh-lift
Напишите, если знаете про этот проект NESFab. Хорошая штука?
В этом видео осваиваем самые простые трюки для поиска и заморозки переменных NES игры в памяти и создаем читы через инструменты эмулятора FCEUX.
Находим адрес, по которому хранится число жизней, изменяем и замораживаем его
Находим адреса хранения таймеров действия призов брони и часов и заставляем их действовать вечно
Бывает забавно посмотреть на устройство игр изнутри и поменять некоторые правила.
В этой игре можно еще много интересного попробовать сделать этим нехитрым инструментарием. Я не знаю насколько это сложно, но забавно будет попробовать следующее:
Забронировать орла найдя адрес по которому хранится его состояние
Снять ограничение на 2 одновременно летящие пули
Менять произвольно тип своего танка
Снять ограничение на 4 одновременно существующих на сцене врага
Сделать чтобы все враги стали мигающими быстроходками
Чтобы враги на уровне не заканчивались или их было 100+ вместо 20
Увеличить вражескую броню, чтобы каждый их танк стал почти неубиваемым терминатором
Изменить поведение врагов, чтобы они были "умнее"
И так далее.
Это мы еще не касались дебага и изменения кода рома, где возможности могут быть еще интереснее. Попробуйте сами поискать интересные переменные в памяти NES игр и сделать свои моды - это легче, чем кажется.