Осваиваю Pygame
Увлекаюсь программированием Ардуино. Даже читаю школьникам курс по этим микроконтроллерам. И так на одном из занятий прозвучал вопрос: "А можно ли на Ардуино сделать игру?". Действительно, а почему бы и нет.
В итоге мы собрали несколько простеньких прототипов: космошутер и гонки в духе старой игры для тетриса с символьным дисплеем 16х2.
В итоге уже по весне я пошел дальше и за пару недель собрал прототип данжен кроулера уже с более подходящим дисплеем, хоть и в монохроме. Получилось реализовать тайловую графику с анимациями: гг с мечом и два типа врагов (пауки и скелеты), генерацию уровней, 2 мира из трех - в каждом по 5 уровней плюс босс-левел, и ловушки с шипами. Сделал систему бонусов: лечение, щит и лук с одной стрелой.
Тайлы 8х8 сначала рисовал в фш попиксельно, потом вручную перегонял в 1 и 0 в IDE.
Управление сделал с джойстика. Пробовал с кнопочной матрицы, но там слишком много кнопок и не все они используются.
Ну а дальше у меня кончилась память на контроллере и никакая оптимизация не помогала уменьшить вес скетча и всунуть в игру нереализованные идеи.
Примерно тогда жу у меня появилась мысль собрать что-то подобное уже для компьютера, чисто в рамках проверки своего скилла в переносе скетча на другой язык программирования и рисования пикель арта в цвете.
Выбрал Python из-за наличия Pygame и хоть каких-то навыков. Сначала потренировался, собрал раннер и платформер про квадраты и прямоугольники, понял как все устроено и приступил к переносу.
Логика перенесена почти без изменений. Чуть расширил пул врагов и сами уровни. Так как больше нет ограничений в виде маленького объема памяти, увеличил тайлы до 32х32 пикселей.
Пока что сделал только генерацию первых 5 уровней, потом идут бесконечные заглушки. Получается что-то в духе не самых хороших игр для NES, но я в принципе и не собирался где-то это публиковать или выкладывать, просто эксперимент для души, скажем так.
Если не потеряю интереса, то доделаю, и положу красиво на полочку.