Последнее время очень не хватает времени на блог и устройства для для него 🙁 — много работы. Но идеи новых устройств постоянно возникают в голове и последняя из них меня очень «зацепила». Поэтому, даже несмотря на отсутствие времени и еще незаконченные проекты (например, AAL — который хоть и на завершающей стадии, но никак не дождется чтобы его доделали), решил начать еще один интересный и большой (в планах) проект — игра на AVR-микроконтроллере. Идея не новая и подобных проектов в сети очень много — так что первопроходцем стать не получится :), но это мне близко по причине любви к Roguelike играм (еще их называют «Рогаликами»).
Мой любимый рогалик, в который я играю на смартфоне — это Darkness Survival.
Недавно увидел в Маркете 1-Bit Rogue и понял, что это готовая основа которую можно перенести на AVR.
Скриншот первого уровня
— Игра будет создаваться на базе Arduino и OLED-дисплее 128х64 (позже можно будет переделывать на любые другие дисплеи). Соответственно, повторить устройство будет делом пяти минут (на макетке без пайки и специального программатора). Устройство должно быть небольшим (в идеале, размером позволяющим его использовать как брелок). В качестве органов управления будут кнопки или джойстик. Еще будет небольшой аккумулятор и модуль его зарядки.
— По пошаговый игровой процесс Рогалика идеален для реализации его на платформах с ограниченными ресурсами. Кроме того, игра случайным образом генерирует карты уровней, ловушки, врагов, оружие и т.д. что экономит память, так как нет необходимости хранить эту информацию.
— Предварительные прикидки показывают, что ATmega328 вполне должна справиться как по быстродействию, так и по размерам памяти. Дисплей 128х64 хоть и маловат, но с другой стороны — это внесет в игру дополнительную сложность (а рогалики именно за сложность и непредсказуемость любят), так как не будет виден весь лабиринт сразу и по нему реально придется ходить и искать выход.
Официальное видео игрового процесса (увеличенная его часть) примерно отображает игровое поле дисплея 128х64 — вроде играбельно.
Вот такая идея.
Не обещаю, что это устройство реализуется быстро, но заниматься им мне будет интересно, а значит есть все шансы что я его не брошу 🙂