140-1-Bit AVR Roguelike Game

Автор: | 02.04.2017

Последнее время очень не хватает времени на блог и устройства для для него 🙁 — много работы. Но идеи новых устройств постоянно возникают в голове и последняя из них меня очень «зацепила». Поэтому, даже несмотря на отсутствие времени и еще незаконченные проекты (например, AAL — который хоть и на завершающей стадии, но никак не дождется чтобы его доделали), решил начать еще один интересный и большой (в планах) проект — игра на AVR-микроконтроллере. Идея не новая и подобных проектов в сети очень много — так что первопроходцем стать не получится :), но это мне близко по причине любви к Roguelike играм (еще их называют «Рогаликами»).

Мой любимый рогалик, в который я играю на смартфоне — это Darkness Survival.

Недавно увидел в Маркете 1-Bit Rogue и понял, что это готовая основа которую можно перенести на AVR.

Скриншот первого уровня

— Игра будет создаваться на базе Arduino и  OLED-дисплее 128х64 (позже можно будет переделывать на любые другие дисплеи). Соответственно, повторить устройство будет делом пяти минут (на макетке без пайки и специального программатора). Устройство должно быть небольшим (в идеале, размером позволяющим его использовать как брелок). В качестве органов управления будут кнопки или джойстик. Еще будет небольшой аккумулятор и модуль его зарядки.
— По пошаговый игровой процесс Рогалика идеален для реализации его на платформах с ограниченными ресурсами. Кроме того, игра случайным образом генерирует карты уровней, ловушки, врагов, оружие и т.д. что экономит память, так как нет необходимости хранить эту информацию.
— Предварительные прикидки показывают, что ATmega328 вполне должна справиться как по быстродействию, так и по размерам памяти. Дисплей 128х64 хоть и маловат, но с другой стороны — это внесет в игру дополнительную сложность (а рогалики именно за сложность и непредсказуемость любят), так как не будет виден весь лабиринт сразу и по нему реально придется ходить и искать выход.

 Официальное видео игрового процесса (увеличенная его часть) примерно отображает игровое поле дисплея 128х64 — вроде играбельно.

Вот такая идея.
Не обещаю, что это устройство реализуется быстро, но заниматься им мне будет интересно, а значит есть все шансы что я его не брошу 🙂

(Visited 1 178 times, 1 visits today)

140-1-Bit AVR Roguelike Game: 4 комментария

  1. Ivan-Karskanov

    Интересная идея. Была когда то такая же, но времени на неё не удается выделить. Если будет Open Source, то готов по участвовать. Будете писать на Algorithm Bulder? Не хотите перейти на Си?
    Можно подробнее про железо необходимое для проекта?

  2. admin Автор записи

    Писать буду на билдере — так проще и быстрей получится. Исходник будет открытый.
    Железо на макетке для разработки набрал следующее: ардуина (ATmega328), джойстик аналоговый и дисплей OLED 1.3 SH1106. Вместо джойстика может будут кнопки (по крайней мере, в финальной версии, чтобы сделать устройство поменьше). Дисплей тоже можно будет менять на другой.

  3. CDR_Xavier

    Хорошая работа. Мне нравится твоя игра. Я пришел из сообщества Arduboy-Open Source сообщества на основе ардубой-это игра мальчика из Arduino Леонардо. У меня был большой интерес к вашей работе и поэтому просим вас присоединиться к сообществу с открытым исходным кодом и поделиться своей игрой с игроками по всему миру. К сожалению, сообщество базируется на английском языке, так что если вы можете дать мне свой код, я сделаю его готовым и поделиться им под вашим именем, и если вы когда-нибудь зайти на сайт позже, вы всегда можете найти его и с гордостью сказать: «я сделал это. »
    Присоединяйся сейчас! На https://community.arduboy.com/

  4. GetChiper Автор записи

    Привет!
    Arduboy очень классная штука!
    Создавая свою игру я смотрел как это делаеты вы. Много есть полезных вещей.
    К сожалению, среда программирования (http://algrom.net/) на которой сделана моя игра не поддерживает ATmega32u4 (иначе я бы и сам сделал вариант под Arduboy). Кроме того — это не Си код (это ближе к ассемблеру) что сильно усложняет перевод кода.
    Я уже думал над этой проблемой и хочу попытаться найти варианты ее решения.

Добавить комментарий