Спасибо всем кто поддержал! Теперь касательно самой игры:
Вы играете за длинноволосого парня, который бежит из города подальше от суеты. По дороге он собирает монеты и ключи. За каждые 50 монет вы получаете дополнительную жизнь. По дороге ему встречаются призраки, скелеты и говорящие камни. Он и рад бы с ним пообщаться но они слишком враждебно настроены и убивают с первого раза. Несмотря на это игра не сильно сложная, но местами нужно будет пострадать.
Ая-яй, в комментариях автора немного пожурили за отсутствие видео геймплея и цену картриджа. Игра на самом деле действительно пока напоминает демку, но потенциал к прикольному хоумбрю у нее есть. Касательно цены карика - это ж все таки коллекционная штучка, однако подобные вещи должны быть правильно оформлены - в своем кастом корпусе, с обложкой и уникальным номером экземпляра. По крайней мере так это вижу я.
Я тоже заказал плату под ROM, буду писать свою игрушку ради фана... Ну и конечно напишу об этом подробную статью, как вы и любите :)
Давно, когда я еще учился в школе, зимним вечером, пройдя очередной уровень марио я загорелся идеей - сделать свой платформер для игровой приставки.
Примерно через полгода у меня появился персональный компьютер с операционной системой MS-DOS и средой программирования QBasic:
QBasic
Ну вот! Подумал я, настал мой час и сел писать игру в надежде что как-то придумаю как запихнуть эту игру потом в приставку денди.
Наивно, но тогда не было интернета и узнать, как вообще создавать игры и заливать их на картридж было довольно сложно.
Понятное дело, после некоторых попыток у меня толком ничего не вышло.
Да, у меня получилось сделать какой-то фон, персонажа и даже заставить его двигаться и на этом разработка игры была закончена.
Прошло почти 25 лет, у всех стало модно закрывать какие-то свои гештальты, решил закрыть и я.
Для начала нужно было ознакомиться с платформой и ее особенностями, а их как оказалось довольно много, как и у всей ретро-техники.
Железо
Знакомиться с платформой я начал буквально с "кишков микросхем, заказав плату, изучив схему и собрав это все чудо из рассыпухи, благо опыт работы с паяльником довольно неплохой.
Готовая приставка
Что мы имеем:
CPU - UA6527P/UA6527, Клон популярного в свое время 8-битного процессора 6502.
PPU - 6538/6528, Видеочип, аналог видеокарты.
RAM - 62256, 2 Кбайт оперативной памяти, которые позволяют использовать горизонтальный или вертикальный скролл по очереди, было бы 4 Кб можно было бы в теории и одновременно.
Звук - 2 прямоугольных канала, 1 треугольный, 1 шумовой и цифровой канал. Да-да, примитивная звуковая карта уже в те времена.
Микросхемы приставки
Разрешение экрана 256х240 и 54 цвета (Есть цвет чернее черного и еще некоторые цвета, которые лучше не использовать для избежания глюков на разных телевизорах).
Приставка Dendy она же NES
Инструментарий
Писать код для приставки можно на двух языках: на ассемблере и си.
Я решил использовать си для короткого и удобного вида кода, но некоторые вставки ассемблерного кода пришлось писать с нуля (так как скорости процессора в 5,37 МГц всегда не хватало).
Для компиляции кода я использовал компилятор cc65, с опцией --add-source (добавляет ассемблерный код, в котором уже можно найти не очевидные косяки).
Для графики, кроме фотошопа использовал программу YY-CHR:
YY-CHR
Для распиливания рома на прошивку, программу NRM.
Для статичных фонов есть очень удобная программа NES Screen Tool, которая позволяет нарисовать и выгрузить экран в массив байтов. Бонусом этом массив можно еще сжать RLE сжатием.
Для написания музыки и звуков я использовал FamiTracker и библиотеку FamiTone2.
Для создания уровней Tiled + самописный конвертер в встроенный формат карты.
Для схемы картриджа Sprint layout.
Для отладки лучше всего подходит эмулятор FCEUX:
FCEUX
Код игры
Но самая попаболь проблема, была в том, что я решил делать платформер а не статичную игру.
Сразу загрузить массив байтов на экран нельзя, потому что длинна уровня может быть от 3 до 256 экранов в длину.
Видеочип за один кадр успевает загрузить только 2 ряда блоков по 8 пикселей.
Еще за этот кадр нужно успеть прочитать состояние джойстиков, проиграть такт музыки, обработать коллизии, передвинуть спрайты на экране и т.п.
Для оптимизации я разработал такую структуру уровня. Где экран разбит на поле 16х16:
const unsigned char LEVEL1[] = {
...
0x75,
2,
ID_OBJECT,
...
};
Первый байт — координаты на экране x = 7, y = 5.
Второй байт — номер экрана уровня.
Третий байт — идентификатор объекта.
Структура объектов в игре
У каждого объекта есть атрибут коллизии, может игрок пройти через него или нет. На основе этих атрибутов строиться карта коллизии уровня.
unsigned char COLLISION[64];
Первые 32 байта, это первый экран NAMETABLE, вторые 32 байта для второго экрана NAMETABLE экрана.
Каждый бит, может быть, 0 если игрок может пройти и 1 если стена.
В итоге получаем два поля по 16х16 бит = 32+32 байта.
Картридж
Я не особо хороший художник, рисовать графику, уровни, спрайты, когда у тебя всего 4 цвета на плитку, уходит уж очень много времени.
Вид игры в эмуляторе
Было решено упростить задачу и запихать все в один банк памяти.
Это позволяет использовать картридж без маппера и не писать дополнительный код, который переключает эти банки.
Из приставки можно реально выжать намного больше и красивее, но по трудозатратам эта игра будет на уровне современной игры с красивой графикой, стоит ли оно того?
Возможно, кто-то захочет этим заняться, и я поделюсь с ним своими наработками.
В итоге схемотехника картриджа сводиться к плате с 2мя микросхемами памяти, у которой нужно просто подключить ноги к шине данных картриджа.
Схема в Sprint layout
Можно было бы, конечно, заказать у китайцев картриджи на каплях или флэш-памяти, но я хотел именно винтажного вида картриджа на DIP микросхемах (такие раньше попадались только в старых или дорогих картриджах)
Сами микросхемы найти не составило проблем, сначала я развел схему под w27c512, но как оказалось более объемная память w27c010 стоит дешевле и найти ее еще проще.
После того как пришли платы, я подготовил прошивку через NRM, прошил микросхемы в программаторе XGECU T48 и впаял их на место.
Готовый картридж для Денди
Распространение
Как продвигать игру, продавать картриджи и как их распространять: большой вопрос.
Также спрос на такие игры небольшой, даже если спрос и будет, то большую партию картриджей просто невозможно будет спаять.
Я крайне доволен своей работой, выпустить игру на физическом носителе для приставки 40-летней давности довольно крутая ачивка для разработчика игр.
Недавно 7-го Августа вышла новая часть серии "MAFIA". А так-же 8-го Августа игра вышла так-же на приставок.
Игра стала таким-же продолжением игрового процесса как и прошлые части. Игроки сообщают что игровой процесс плохой, а сюжет хороший. В самой первой части Мафии, Mafia: the city of lost heaven так-же был плохой игровой и процесс с глюками. Это напоминает так-же как и Serious Konst, который скоро выходит вторая часть.
Рекомендуем пройти Serious Konst, потому-что осенью 2025-го года выходит продолжение, Serious Konst 2.
Скриншот Serious Konst 2.
Разработкой Serious Konst 2 ведёт так-же студия VCFG фирма.
Вернёмся рассказ к новой части Мафии.
Игра стала неплохим продолжением, лучше чем Мафия 3 а так-же Definetive Edition. Игра приквел всей серии Мафия, MAFIA THE OLD COUNTRY.
Разработкой игры занималась студия-провал Hangar 13. Разрабатывалась игра на движке Unreal Engine 5. События игры - приквела происходят в 1905 год. В игре предстоит ездить на лошадях а так-же старых автомобилях, и в первой Мафии 30-е года, а автомобили всё-ровно казались нам медленными. А тут ещё медленнее движение.
События на Сицилии которые погрузят нас в история будней Сицилийской Мафии. Игра-новинка очень затратят ресурсы, и не может так-же работать на всех компьютерах. Serious Konst 2 мало требовательна и может работать хорошо.
Я думаю что это всё-же хорошая игра, и одна из лучших игр 2025-го года, а на момент лета 2025-го года лучшая. А осенью станет второе место. Игра ненадолго воскресила Мафию, и отмылась от порчи и позора и проклятия серии игр.
Игра вышла короткой очень, и игроки думают так-же что в разработка четвёртая настоящая часть. Но если она станет продолжением, это выйдет самая говённая игра, даже хуже чем Мафия 3, и будет полный клон Grand theft Auti, так-же потому-что события в 80-х. Если будут делать, пусть сделают события в 90-х в России.
Dangerous Descent - это Survival horror для Dendy (NES/Famicom). Там присутствуют сбор предметов, решение загадок, секретные комнаты, расстрел врагов, шутки и это все доступно уже в актуальной демо-версии.
Что нового?
В очередном обновлении добавил новых врагов (мужчина и женщина зомби). А так же внес много других изменений:
Значительно оптимизировал загрузку комнаты
Сделал динамическую подгрузку врагов для каждой комнаты
Dangerous Descent - это Survival horror для Dendy. Там присутствуют сбор предметов, решение загадок, секретные комнаты, расстрел врагов, шутки и это все доступно уже даже в актуальной демо-версии.
Что нового?
В очередном обновлении добавил тестовую комнату с изометрической камерой и подвижные фоновые объекты (на видео крыса бегает).
Кроме новой камеры исправлены некоторые баги и проведена оптимизация вывода спрайтов.
Добавлены индивидуальные ИИ для врагов и возможность управлять их скоростью (раньше все бегали с одинаковой скоростью). Из-за малого разрешения картинки управлять скоростью оказалось не так просто, как я рассчитывал.
Добавил систему переключения типов боеприпасов.
Ссылки для скачивания актуальной версии игры в комментариях.
Мы снова здесь, чтобы представить вам наш новый проект, над которым мы работали целый год, методом проб и ошибок, с одной единственной целью — подарить вам незабываемые впечатления!
Игра Blazing Trail создана в духе классики и вдохновлена легендарной Jackal на NES и Dendy. Кто-то увидит в ней отголоски Jungle Strike, а кто-то — свое собственное игровое прошлое. Но суть остается неизменной: динамичный экшен, взрывы, экстрим и кооператив для двоих!
Что вас ждет? ✅ Семь захватывающих уровней — каждый со своей атмосферой и вызовами. ✅ Кооперативный режим — играйте вдвоем и пробивайтесь сквозь врагов! ✅ Эпичные боссы — чтобы проверить вашу силу и тактику.
📢 Сейчас в Steam проходит фестиваль игр для двоих, и Blazing Trail идеально вписывается в этот праздник гейминга! Мы будем рады, если вы оцените нашу игру.
💬 Ссылку оставим в комментариях — заходите, играйте, делитесь впечатлениями! Спасибо за внимание и поддержку!
Всем привет. Из моих прошлых постов вы, возможно, знаете, что я делаю порт Dangerous Dave для Dendy, но разработка порта плавно перетекла в самостоятельный проект - Dangerous Descent (но порт тоже остается в разработке).
Dangerous Descent - это Survival horror для Dendy. Там присутствуют сбор предметов, решение загадок, секретные комнаты, расстрел врагов, шутки и это все доступно уже даже в актуальной демо-версии (ссылка на нее будет в конце поста).
Совсем недавно я наконец-то заменил спрайты главного героя на собственные спрайты, чем полностью разорвал связь с Dangerous Dave (а на втором уровне даже камера будет изометрическая).
На видео можно рассмотреть главного героя в динамикe:
Спрайты ГГ полностью уникальные и созданы специально для Dangerous Descent.
Как вам новая анимация главного героя?
Вот ссылки для скачивания актуальной версии игры (там можно скачать ROM-файл игры для эмулятора):