Бизнес на идее с Пикабу и детских играх "Пол – это лава" и "Классики". IT часть
Я простой инженер из Смоленска и чуть более года назад мы с партнёром с нуля собрали и открыли первую в России пиксельную игровую. Сегодня это направление активно развивается и таких заведений в стране уже порядка 50 штук. Мой пост будет про IT составляющую нашего проекта.
Казалось бы, чего там айтишного и причём здесь Пикабу?!
Для тех, кто видит проект впервые
Короткая видео нарезка, чтобы составить первое впечатление:
Суть развлечения заключается в играх на интерактивном пиксельном полу: люди выполняют различные игровые сценарии: от обычных “Классиков” и “Пол – это лава”, до игры в “Пинг-Понг” на 32 квадратных метрах площади, покрытой специальными светодиодными плитками, оснащёнными датчиками нажатия. Есть как активные игры на скорость, так и логические на подумать.
Почему идея с Пикабу?
Потому что в ноябре 2022 года я увидел вот этот ролик и решил дома из говна и палок собрать прототип игровой платформы. Ну а дальше всё как в тумане…
И причём тут IT?!
С самого начала мы решили подложить соломку под развитие целой сети заведений по всей стране. Это потребовало заморочиться над построением определённой IT инфраструктуры:
Основные идеи:
Все контроллеры всех игровых комнат должны быть объединены в единую VPN сеть и подключены к единой системе мониторинга, что позволит в реальном времени наблюдать общую картину состояния сети игровых заведений и следить за основными параметрами их работы и, самое главное, количеством неисправностей в игровых;
К каждому контроллеру должен быть круглосуточный прямой доступ для диагностики и устранения проблем;
Должна быть собственная CDN (сеть доставки контента) на минималках: централизованное хранилище ПО контента (игр, звуков, картинок) с автоматизированным механизмом доставки обновлений на контроллеры;
Централизованная база бронирований и клиентов: позволит следить за денежным потоком, а в перспективе позволит устраивать турниры между посетителями разных городов и стран;
Т.к мы планировали развиваться в том числе по модели франчайзинга, ещё одной важной фишкой должно было стать автоматическое лицензирование программного обеспечения.
Теперь давайте поближе взглянем на схему каждой отдельной локации
Каждая игровая комната управляется контроллером на базе микрокомпьютером Raspberry Pi: пол (CAN шина), настенные кнопки (CAN шина), звук (AUX), табло (HDMI), потолочный свет (CAN шина). На контроллере установлено наше управляющее ПО с HTTP сервером и Lua-машиной для обслуживания игр. Для управления локацией, по сути, достаточно любого браузера на планшете или даже телефоне.
Что крутится в облаке?
Обслуживает это всё зоопарк микросервисов на нескольких серверах в Яндекс Облаке (не реклама, просто удобно) и выглядит примерно так:
Коротко о главном:
Docker с зоопарком микросервисов на Go;
Traefik в качестве роутера;
Postgres база данных;
NATS в качестве асинхронного брокера сообщений;
Self hosted VPN сервер;
Prometheus сборщики логов и метрик в Grafana Cloud (там, кстати, неплохой бесплатный тариф, прям кайфую);
Object Storage (aka S3) для хранения фоток / видео / сборок ПО;
GitHub для кода + CI/CD (пока хватает);
Как по мне, получилось весьма лаконично, но готов к критике, есть куда развиваться.
Базовый мониторинг сейчас выглядит так:
Open-source игры & Roblox style
Это прям моя гордость. В предыдущих статьях я уже коротко упоминал про наши open-source игры и специальную платформу для их разработки и тестирования. Немного повторюсь и освежу информацию.
Мы сделали открытую систему разработки игр, это очень важный пункт, который не все до конца понимают:
во-первых, у нас есть визуальный конструктор игр "Пол–это лава", где любой скучающий администратор может попрактиковаться в покадровой отрисовке игры;
а во-вторых, у нас есть собственный онлайн редактор для разработки игровых сценариев на простом скриптовом языке Lua, который может освоить любой толковый школьник за несколько вечеров, при этом исходный код наших игр публично открыт в репозитории на GitHub, что делает обучение ещё проще.
Всё это даёт возможность нам (и вам, при желании) легко, быстро и дёшево разрабатывать новые игры и постоянно пополнять коллекцию. А совсем недавно мы внедрили в игровой процесс геймпад, что добавляет огромное разнообразие в игровые механики и даёт возможность весело провести время даже сидя на диване.
Почему Roblox-style?
Роблокс даёт возможность игрокам самим разрабатывать игры и даже зарабатывать на них, и мы в перспективе хотим сделать что-то похожее. Готовы выделять процент от выручки на выплаты сторонним разработчикам. А ещё на ютубе нашу игру “Безопасный цвет” постоянно сравнивают с играми “Color blocks” или “Block party” из Roblox, хотя когда я её разрабатывал, я ещё ничего не знал о Роблоксе...
В свой онлайн редактор для удобного тестирования игр мы решили добавить вот такую 3D визуализацию:
Интерактивный стол
Прямо сейчас я разрабатываю сенсорный интерактивный игровой стол, исходники которого я планирую выложить в открытый доступ. На нём можно будет запускать и отлаживать наши игры. Это должно привлечь к проекту сторонних энтузиастов, а также заинтересовать школы программирования и робототехники.
Заключение
Я художник, я так вижу! Но буду рад любой конструктивной критике и взгляду со стороны. Более подробные статьи обычно публикую на Хабре и VC, для Пикабу постарался коротко и по делу, прощупываю аудиторию, так сказать. Готов ответить на вопросы.
С самого начала проекта я завёл блох в свитере ТГ канал @pixel_quest и стараюсь открыто делиться всеми аспектами разработки и развития компании, в т.ч финансовыми. Кому интересно последить, присоединяйтесь!






Лига программистов
2.3K постов12K подписчиков
Правила сообщества
- Будьте взаимовежливы, аргументируйте критику
- Приветствуются любые посты по тематике программирования
- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества