20

Age of Robots - Игра для хакатона

В конце сентября 2023 пришло письмо о проведении хакатона и я решил в нём поучаствовать. Хакатон немного нестандартный, не два-три дня как обычно проводят, а аж целых 2 недели. Начало было 4 октября, а окончание 18. На момент написания поста результатов еще никаких нет кроме того что игра опубликована.

Age of Robots - Игра для хакатона

Зарегистрировался и осталось подождать начала, о котором я благополучно забыл. Вечером 7 октября внезапно вспомнил про него, а уже прошло 3 дня с начала, и решил всё таки поучаствовать несмотря ни на что.

Команда за это время не подобралась, да и я особо не старался, поэтому пришлось участвовать в соло команде. Выбрал трек "Игры" и начал.

Идея

Тут проблем особо не было, у меня в заметках накопилось порядка 40 с лишним идей игр, бери любую и делай. Не все они уже актуальны и продуманы, некоторые записаны просто одной фразой.

Выбор пал на игру про нанороботов, но в процессе идея трансформировалась в игру про обычных роботов, которые очнулись в постапокалиптическом мире и им нужно понять кто они такие и зачем были созданы.

Роботов можно назначать работать в постройки. Постройки приносят ресурся или производят опять же роботов. У роботов есть параметр редкости и каждый созданный робот случайным образом создается из списка доступных типов роботов.

Новые типы роботов можно получить с открытием новых построек, в квестах и с помощью изучения технологий в "Исследовательском центре им. Бэббиджа" :)

В какой-то момент роботы узнают что их создали человеки, а никого из них нет, то они решают восстановить условия для жизни и собственно само человечество.

Что по технологиям?

Несколько раз пробовал пользоваться ECS паттерном и библиотеками в Unity, но всё никак не мог привыкнуть. Давненько смотрел доклады и помнил что это очень удобно для разработки игр. Сейчас был хороший повод использовать этот подход. Немного погуглив библиотеки для JavaScript, а было решено писать на нём, решил остановиться на Ape ECS.

Быстренько скопипастил систему сборки из Immortal Knight и начал изучать Ape ECS. На удивление в этот раз как-то всё было более понятно и стало получаться. Без ошибок не обошлось, пытался использовать паттерн не по назначению, превращяя ECS в EC, но вовремя одумался и всё получилось более-менее неплохо.

Для UI решил оставить React из Immortal Knight, т.к. к Phaser еще не до конца привык, быстрее было сделать на обычных div'ах и CSS.

Один из ранних скриншотов интерфейса

Один из ранних скриншотов интерфейса

Графика

Этот пункт заслуживает отдельного описания. Так как я участвовал один то пришлось быть и разработчиком, и сценарий писать, и дизайн рисовать.

А ведь сейчас как раз такой расцвет генеративных моделей изображений. Самым простым способом было взять Stable Diffusion XL 1.0 с Pixel Art XL. Интерфейсом послужил ComfyUI.

В итоге получились вот такие изображения:

Роботы всех видов и размеров, а так же здания

Из этих небольших кусочков была составлена игровая карта со зданиями, а так же иконки роботов, ресурсов и технологий. Всего было сгенерированно чуть более 600 изображений.

Процесс

Основной игровой процесс был написан примерно за четыре дня. Остальное уже дописывалось по мере необходимости.

Важной частью, и одновременно самой долгой, для меня оказалось придумывать сценарий и реализовывать его в виде квестов и технологий для изучения. В итоге в игре получилось 20 квестов и 20 технологий.

Ну и куда же без небольших приколов в игре? У всех роботов интересные названия, местами в описаниях зданий или технологий есть отсылки. Например "Лаборатория GPT-9000" или "Шахтёр BTC-25". Можете сами поискать.

Что дальше?

Так как какое-то время был запрет на рекламу игры то пишу здесь только сейчас, а пока жду результатов, делаю мелкие фиксы и смотрю на графики. Есть идея игры продолжения в похожем сеттинге, но с другой графикой.

Поиграть в Age of Robots можно на Яндекс Играх https://yandex.ru/games/app/262827

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества