153-Новости по gcConsole

Автор: | 28.07.2018

За последний месяц появилось много чего интересного связанного с консолью. Этому способствовало «сдруживание» с проектом ArduBoy.  Сообщество попросило меня портировать на ArduBoy мою игру и в процессе портирования я не забыл и за свою консоль.

Итак, что нового:

1 Консоль заимела звук в виде бузера (смотри схему ниже куда подключать)
2 Консоль заимела портированную библиотеку для Arduino IDE с проекта ArduBoy (теперь игры создавать будет на порядок проще, так как есть много готовых примеров-исходников, библиотека хорошо описана и есть сообщество)
3 Появились новые игры готовые для загрузки в консоль из gcManager.

Теперь подробней. Читать далее

152-gcRogue:жажда мести – описание игры

Автор: | 13.05.2018

После того как я обзавелся консолькой собственного изготовления, я почти довел до ума игру gcRogue. Теперь нужна статья, где игра будет описана (для возможности ссылаться на нее из того-же gcManager). Здесь я попытаюсь собирать все, что нужно знать по игре.

Железо

Игра сделана под Arduino Pro Mini (Nano, Uno, ATmega328) и I2C OLED дисплей (смотрите статью по сборке компактной консольки gcConsole и прошивке игры). Кроме того, есть демо-варианты игры под разные типы дисплеев и Ардуины.

Управление игрой осуществляется шестью кнопками: Сюжет

Ваш игровой персонаж – это привидение когда-то побежденного могучего героя (которому даже установили памятник на кладбище в полный рост!). Жажда мести не дает герою покоиться с миром и он в виде привидения скитается по кладбищу. Однажды привидение натыкается на свой памятник и перевоплощается снова в героя, для того чтобы спуститься в глубины подземелья и отомстить за свою смерь главному злодею.

Геймплей

gcRogue – это игра в стиле rogue-like (по простому — «рогалик»). Это значит, что игру невозможно будет пройти с первого раза. Каждая победа очередного босса упрощает игру при последующих ее прохождениях. Еще необходимо планировать свои действия в лабиринте – каких-то монстров убивать (за них начисляются дополнительные очки текущей жизни), каких-то пытаться избегать. Сундуки, разбросанные по лабиринту, могут вылечить персонажа, починить или улучшить его оружие, или могут выпустить призрака, с которым придется сразиться, теряя жизнь.

Для того чтобы спустится на уровень ниже нужно найти в лабиринте и нажать кнопку открывающую лестницу прохода (монстров убивать не обязательно для прохождения уровня). Для того чтобы пройти уровень босса – нужно убить босса после чего появится лестница прохода. Читать далее

151-gcConsole — хардкорная игровая консоль на Arduino Pro Mini и 0.96 OLED I2C

Автор: | 09.05.2018

 

На картинке выше — игровая AVR-консоль. Эта консоль задумывалась как отладочная платформа для создания игр под Arduino+OLED (после первой моей игры gcRogue, есть желание создать еще парочку). Платформа вышла довольно неплохой, и даже претендует на полноценное устройство. Конечно, она не может конкурировать с действующими проектами подобных консолей:


— зато у моей консоли есть одно большое преимущество — ее можно без проблем собрать самому. Для сборки понадобятся всего несколько компонентов и немного времени. Приступим?

Читать далее

150-Arduino ISP и Algorithm Builder USB adapter из Arduino Nano

Автор: | 22.04.2018

В этой статье я покажу, как просто сделать AVR-программатор из Arduino Nano. Способ не новый и не оригинальный – это штатная возможность Arduino IDE.

В свое время первым программатором для AVR, обычно, становился программатор «5-проводков» который подключался к LPT или COM — порту. Он же выступал программатором для единичных устройств, когда нужно было раз прошить МК и больше к этому не возвращаться. Сейчас подобные нужды (первый программатор или программатор для одного устройства) не перестали быть актуальны. Проблема в том, что LPT и COM — порта становятся редкостью (а в ноутбуках их уже давно нет). Сейчас для программатора нужно использовать USB-порт, но есть проблема — сборка программатора под USB для начинающего довольно сложная задача. Выход есть — купить недорогой программатор типа USBasp. В случае если USBasp (или другой) Вам достать не получилось, то есть вариант собрать программатор из Arduino Nano – получится не хуже.

Arduino ISP

Этот программатор (вернее скетч для него) включен в официальную Arduino IDE (пример под названием «Arduino ISP»).

Все очень просто. Нужно Arduino Nano, несколько проводков и несколько резисторов. Читать далее

148-Автоматический загрузчик HEX-файлов для AVR микроконтроллеров – обновление gcUploader

Автор: | 09.02.2018

Обновил программу-загрузчик HEX-файлов — gcUploader.

О самой программе прочитать (и скачать саму программу) можно в соответствующей статье, а здесь я напишу о том, что добавил нового. Изменений немного – всего два, но эти изменения значительно расширяют область применения данной программы.

Первое, что я сделал – это заменил AVRDUDE на свежую версию 6.3. Вообще, AVRDUDE можно самому менять, закидывая в папку с программой нужную версию (это может понадобиться, если у Вас какая-то особенная Дудка для работы с Вашим программатором).

Второе и главное, что я сделал (и что давно обещал) – это добавил в программу возможность самому прописывать нужные Ардуины. Более того, теперь программа умеет работать не только с Ардуинами, но и с любыми микроконтроллерами и программаторами поддерживаемыми Дудкой. Реализуется эта возможность путём прописывания строки параметров для AVRDUDE в файле gcUploader.ini 

 

Читать далее

147-GC-Rogue начинаю добавлять другие дисплеи

Автор: | 02.11.2017

Как и обещал ранее, начинаю делать варианты игры под разные дисплеи. Решил сначала сделать варианты для дисплеев (чтобы побольше людей смогли потестить то, что уже сделано), а доделывать игру уже буду по факту обкатки.

Помимо базового варианта игры с дисплеем OLED SPI, хотелось-бы иметь и вариант с OLED I2C (так как похоже — это наиболее популярный вариант OLED-дисплея). До начала реализации не было уверенности что с I2C что-то получится. Причина — относительно медленная скорость передачи данных в протоколе. И я оказался прав. На стандартной скорости протокола 400кГц экран прорисовывался хоть и без артефактов, но значительно медленней в сравнении с SPI дисплеем. Такое положение вещей меня не устроило и я решил поднимать скорость. На удивление дисплей без проблем работает с вдвое большей скоростью (выше  поднять скорость не позволяет софтовая реализация протокола). Увеличенная скорость нуждается в тестировании на разных дисплеях (я попробовал только на трех — все нормально).

На данный момент доступны несколько вариантов демо-версии игры: для OLED 4SPI, OLED I2C, Noki5110 (плюс варианты с кнопками).

Схемы для сборки игры (кликабельно) — остальные схемы Вы найдете в папках соответствующих проектов:

        

Читать далее

146-gcManager — простой способ повторить проект блога

Автор: | 24.10.2017

gcManager — это программа, которая позволяет буквально в три шага прошить в Arduino любой проект блога GetChip.net

Скачать программу можно по ссылке: http://www.getchip.net/gcmanager/

Читать далее

145-GC-Rogue почти полная готовность

Автор: | 20.09.2017

По определенным причинам стало совсем мало времени на проекты блога, но я все равно понемногу уделяю внимание начатым устройствам. Вот недавно перешел к финальной стадии разработки игры для Arduino с OLED дисплеем – GC Rogue. Хочу поделиться с Вами текущим прогрессом!

Оставляю тестовую прошивку, загрузив которую уже можно полноценно пройти несколько уровней (сделал непроходимым первого босса), ознакомившись с игровым процессом.

gcrogue.zip - Тестовая прошивка GC Rogue

Читать далее

144-1-Bit AVR Game-Лабиринт.

Автор: | 20.04.2017

Первых несколько этапов игры уже реализовано.
Это формирование произвольного случайного лабиринта, вывод лабиринта на экран и произвольное движение по нему.

Джойстиком можно произвольно перемещать вид, а нажатие на джойстик строит новый случайный лабиринт.

Лабиринт создается по этому алгоритму. Получается быстро и не накладно по ресурсам.

Новая тестовая прошивка.
main.hex - 1-Bit Rogue тест создания лабиринта
Прошить ее в Ардуину можно при помощи GC-Uploader
Схему устройства — смотрим здесь.

Дальше буду дорабатывать алгоритм вывода на экран и начинать работать над подселением монстров в лабиринт.

P.S. Eсть несколько подобных устройств — можно подсмотреть как это  делают другие.
— с таким-же дисплеем ArduBoy
— и с дисплеем от Нокии Gamebuino