Gunfield: шмап-рогалик, пиксель арт, боссы и ранний доступ.
Всем привет! Подходит к релизу мой новый проект. Встречайте: Gunfield
Я начал разрабатывать игру на конкурсе gamedev.ru и поначалу не планировал завершать проект. Думал просто деконструирую механики Vampire Survivors и попрактикуюсь в генерации случайных боссов. Но что-то затянуло меня это дело почти на полтора года… Возможно, это ностальгия по Gun-Nac и Tyrian )
Об игре
Трейлер:
Игра представляет собой гибрид классического шмапа с элементами рогалика.
• Вы летите вперёд, зачищая волны врагов; стрельба происходит автоматически.
• Из врагов выпадают сферки опыта, и по достижении нового уровня предлагается выбрать одно из выпавших случайно улучшений — привет из Кримсонленда!
• Забег длится около 25 минут. Начальные волны и первые два босса имеют некоторую случайность в генерации для разнообразия.
• Постепенно открываются новые способности, персонажи, а также ответвления, ведущие в новые локации.
Выбора сложности нет, но в разных билдах игра будет чувствоваться от весьма хардкорной до казуального фармера опыта.
Разработка
Планировал эту игру как тренировку перед началом серьёзной работы над другой своей игрой — Стальными лунами.
Уже в ней я взял за правило вставлять в игру быстрые наброски. Главное — накидать функциональную форму без лишних деталей. Это позволяет соотносить детали друг с другом и безболезненно менять их, что очень помогает на ранних стадиях и развязывает руки для переделок. А если что-то не нравится, то выбросить или переделать то, над чем работал меньше часа, совсем не жалко.
Набросок босса — 10 минут работы и вставляем в игру |
В игре все устроило — подрисовываем детали. У пиксель арта очень много времени отнимает чистка и прорисовка мелких деталей) |
Аналогично и с заставкой: три наброска, и по-быстрому анимируем, а как появится время, дорисовываю аккуратно.
Плюс, это помогает мне лучше расставлять приоритеты: на что тратить силы, а на что нет, что, на мой взгляд, является самым важным при разработке авторских игр.
В данном случае прекрасной иллюстрацией служат аниме мультики: часто авторы максимально экономят силы вставляя статику в малозначимые места и диалоги, чтобы в боевых сценах оторваться по полной увеличив количество ключевых кадров в несколько раз.
Когда общая масса контента уровня уже присутствует в игре, пусть и в черновом виде, легче определить, каким объектам не хватает детализации и подтянуть их. Некоторые вещи можно оставить в виде набросков, лишь слегка подровняв кривые пиксели.
Собрал в одном видео нарезку из первых месяцев работы над игрой:
Самой большой проблемой стал баланс. В моих предыдущих играх он не играл столь серьезной роли, и можно было обойтись тестами «на глазок» и парой таблиц в Excel. Однако здесь, помимо цифр, есть множество других параметров: узор стрельбы, время на убийство (ТТК) для разных типов врагов, удобство использования и так далее.
Как облегчал себе работу с тестированием:
- Управление временем. Для меня уже стандарт — сделать клавишу пока держишь которую время ускорется на 10. Отлично подходит для быстрой перемотки игры в тех местах где тебя ничего не интересует в данный момент. Добавил еще ползунок, который может плавно регулировать скорость игры от 0 до 3. Это помогает спокойно рассмотреть стыки анимаций и эффектов, быстро прикинуть, надо ли ускорить или замедлить те или иные атаки.
- Под капотом игра разбита на волны по 30 секунд. Автосейв сохраняет каждую волну отдельным файлом, так что можно быстро попасть в любую часть игры. Также добавил несколько хоткеев для быстрого сейва и загрузки.
- Сделал специальную сцену для тестирования DPS оружия — это сильно помогает в начальном балансе для нового оружия.
- Еще каждую 30 секунд игры создается сохранение логов в текстовый файл, где записаны показатели по каждому оружию и важным параметрам. Это особенно хорошо помогает балансировать получаемый игроком опыт, чтобы прокачка шла равномерно. Также реализовал возможность загружать эти логи и выводить графики для наглядности.
Вторая большая проблема — это всякая механика. Уж больно много времени уходит на прорисовку мелких элементов, хотя к концу разработки я уже навострился рисовать такие штуки раза в три быстрее.
Ранний доступ
Собственно, к середине разработки я понял, что не вывожу тестирование, и надо хоть как-то подключать игроков и я решил выпустить игру в ранний доступ. Это сильно помогло править баланс и находить баги. Плюс игроки рассказали мне некоторые нюансы жанра, которые я просто не знал, так как сам давно не играю в подобные игры. Например, что коллайдер игрока принято делать значительно меньше спрайта.
Как было в начале и сейчас
Как и при обычном выпуске, до 10 отзывов Steam совсем не даёт трафика. Вот показы за первую неделю, десятый отзыв с купленной версии игра получила через пару дней после выхода:
За время раннего доступа купили столько:
+ около 10 ключей попросили продать через лс в разных соцсетях.
Вишлисты набранные за ранний доступ:
В ВК Play я тоже выпущу игру, но чуть позже. Не хочу в спешке обновлять игру на двух платформах, если что-то будет не так.
Продвижение
В ранний доступ я вышел с двумя сотнями вишлистов — это всё, что нужно знать про моё продвижение)
В основном я делал посты на Реддите и немного на Пикабу. С них пришло несколько людей с дельными советами по улучшению игры и композитор, который согласился бесплатно написать несколько треков (это его музыка в трейлере).
Старался аккуратно оформить страницу игры. Много провозился с оформление иконки, с которой игроки заходят на страницу игры.
Для малого капсуля я использовал эффект псевдо 3D: текст названия игры выступает за специально уменьшенную рамку с полями цвета фона Стима. Это также создаёт отступ от линии остальных иконок в списке, а обводка создаёт иллюзию выделенного элемента.
Цвета специально подобраны контрастно. Кроме того, в картинку добавлены «глаза тигра» в виде взрывов — наш мозг невольно обращает внимание на такие вещи.
Старался верстать сразу на странице и смотреть, как иконки выглядят на фоне остальных. Задача — максимально выделиться ни их пестром фоне, чтобы пользователь хотя бы навёл мышку на вашу игру.
Кстати, был момент на одной из распродаж, когда я поменял скриншоты местами, и это удвоило продажи. Так что ставьте самые интересные скриншоты первыми, иначе до них могут не долистать!
Ну и немного об инструментах.
Так как основные трудозатраты — это производство визуального контента, стараюсь максимально упрощать и автоматизировать всё, что только можно. Скажу сразу, что я не пиксель-артист и совершено не стремлюсь в хардкорный пиксель-арт: палитра у меня свободная, много спрайтов просто вращается и пикселизуется через эффекты.
Движок: Construct 2. Прекрасен для быстрого прототипирования, но слишком прост для больших игр. Главные проблемы: отсутствие префабов, встроенного аниматора, 3D, абстрактных классов и хорошего генератора эффектов. И ещё большие проблемы с портированием. Если бы игра не была сделана на конкурсе, я бы его не брал. Думаю, это моя последняя выпущенная игра, сделанная в нём… дальше на Юнити.
Рисовашки: Тут все стандартно: Photoshop, Aseprite. Для разных задач что-то удобнее в одном, что-то в другом; часто держу открытыми обе программы и копипастю из одной в другую. Шоп удобен для цветокоррекции и организации файлов. Ася — для рисования пиксель перфекта и генерации спрайтлистов.
Анимации:
- Photoshop для покадровой анимации, просто я привык к нему.
- PixelOver. Софтина из Стима в раннем доступе. Этакий Spine для пиксель-арта: скелетные анимации, деформации сетки, фильтры, 3D, возможность настроить ресемплинг, дизеринг и денойзинг. Очень нравится здешняя индексация цветов. Неплохие возможности как для создания анимации в самой программе, так и для обработки и пикселизации импортированной из других.
- SpriteMancer. Еще один представитель стимовского раннего доступа. Генератор пиксельных FX’ов с возможностью их обработки через нодовый шейдер. Регулярно глючит и падает, но всё же обладает хорошим набором инструментов для создания пиксельных эффектов.
- Плагин для Aseprite от DarkDes’a используется для пиксельного вращения объектов; подробности можно почитать в статье автора. Долго искал, чем сделать вращение пушек, этот плагин — самое простое решение.
Был ещё всякий софт, который разово использовал для конкретных задач: Spine для крупной лицевой анимации, MagicaVoxel и Blender для 3D, Pixelpart для каких-то эффектов. Возможно, ещё что-то по мелочи.
- OneNote для документации.
- PureRef для мудбордов и референсов.
- Audacity для звука.
Нейронки: Elevenlabs для озвучки голосов персонажей и Stable Diffusion Automatic 1111 для генерации референсов, GPT для перевода на другие языки.
На это пока все. Готовлюсь к выходу из раннего доступа, за его время игра увеличилась в два раза и заметно отполировалась. Пойду рассылать письма блогерам…
Спасибо что дочитали до конца!
- 11 октября 2024, 19:54
- 025
Моя сестра сказала, что это божья коровка
Она права)
капсула классная
А выбор ответвлений на что-то влияет? Просто по скрину показывается "у вас есть возможность развилки", но игроку не дается никакой инфы, что поменяется, или что он получит, если он выберет развилку. Было бы неплохо давать эту инфу, иначе игрок не может делать взвешенных решений. Например, как в Darkest Dungeon 2.
На прокачку не влияет. Просто ведет в другие локации. В меню есть карта, на которой показывается, где игрок был, а где нет.
Просто, даже в таком случае, лучше показывать игроку в какую локацию ведет развилка, как по мне. С точки геймдизайна мне логичным видится подход "у каждой локации должна быть своя причина для игрока туда попасть", иначе особосго смысла в разных локациях нет. А если между локациями есть разница, было бы хорошо дать игроку знать куда идет развилка, а то вряд ли он будет их все на память знать.
Может, ты и прав. Я изначально планировал, что в игре будут фоновые диалоги, и по ним будет понятно, что происходит в ответвлениях, но, видимо, диалогов уже не будет. Можно будет добавить названия и иконку локаций в интерфейс смены направления.
Ого, рад что пригодилось!
Игра как всегда на стиле, поздравляю с релизом! (ранний доступ тоже релиз!)
Опять они тут анимешными тянками завлекают и продают народу! :yak: Берём на заметку
Релизнул игру!
Ключики для тех, кто хочет поиграть, но почему-то не хочет покупать. 😉
раз FPGRZ-CGPAM-TQ9QN
два L45FR-E56LM-KZG6E
три YZN9N-M32WQ-0MVTF
четыре BWFC7-Q50VI-RHB7A
пять 55DK2-H6GTF-RVC0A
шесть GLLLQ-QCP7E-8P2WG
семь 0X2FD-G5A6I-WE4RT
ВСЕ!)
Забрала шестой 💙 Седьмой кстати уже активирован оказался.
О, халявку я люблю, спасибо, забрал 4ый
ShivArt
Чутка поиграл, очень хорошо прям. Хотелось бы на мобилки такое.
Из недочетов:
— нельзя скрыть курсор в моменты полета(либо нужно менее выбивающийся не системный сделать)
— урон по тебе плохо сигнализируется. Не всегда удается понять кто и когда тебя задамажил. Получение урона это очень важная штука, её нужно значительно ярче показывать.
Спасибо. Не я в мобилки не сунусь, там столько бабла надо в рекламу вваливать...)
Некоторые выбирают апгрейды мышкой, поэтому я оставил. А кастомные курсоры обычно меня бесят.
На мой взгляд, всё нормально, и я не помню, чтобы кто-то жаловался. Что конкретно предлагаешь сделать?
Ну ты можешь скрывать курсор когда игрок непосредственно играет, а когда апгрейды то курсор появляется. Пара строчек кода. Я бы лучше как опцию в настройках такое сделал. А если управлять не мышкой то тоже курсор виден будет?
Я жалуюсь) по разному можно сделать. Проблема в том, что на экране много всего, всё яркое. Можно ярко чтобы вспыхнул кораблик, но может и такое потеряться. Может более отчетливый звук. Может "потрясти весь интерфейс", может красную виньетку как в шутанах. Нужно экспериментировать
Практика показывает, что 50% бегут жаловаться разработчику, а не лезут в настройки. Да, будет виден. Не вижу проблемы подвинуть. Если будут еще жалобы на это — сделаю, а пока пусть будет как есть.
Я посмотрю, как делают японцы урон в своих шмапах, может, что-то добавлю
в apple arcade хорошо бы залетела, но я хз как туда попасть)
Второй забрал, спасибо!
Прошла один рут, в принципе норм, даже очень. Но у боссов всего 2 фазы, маловато будет. А сами боссфайты затянуты на фаз 5-6 среднестатистического шмапа. Когда открываются имбовые предметы слишком легко всё проходится. Еще не поняла можно ли подсветить свой хитбокс, вроде нет. Музыка норм, местами неплохая. Сюжет из дарлинг ин зе франкс хехе. В принципе, пойдет, играется приятно, можно погонять. Хотя я больше люблю медленные буллет хелы.
Первый забрал. Спасибо.
Прошёл, спасибо за ключ. В целом, отлично, но не хватает сложности/реиграбельности, привычных для игр такого типа. Достаточно пройти 4 ветки, открыть все апгрейды и дальше особо нечего делать. Случайный режим не сильно что меняет. Можно добавить более классический режим без стартовых усилений с 4-мя ачивками для боссов (как те что без урона) или даже для каждого героя какие-то индикаторы в интерфейсе (галочки на карте?), что он прошёл такой-то путь без мета-прогрессии. Мне показалось так гораздо интереснее - особенности героев начинают играть большую роль и не получается бесконечно реролить на нужные апгрейды. Щит/отхил комбинация выглядит сломанной, почти неуязвимым становишься, особенно щит каждые 5 секунд раза в два можно понерфить и бонусы, ремонтирующие корабль, часто выпадают, когда мало здоровья или везло так. Понравился меч (и в целом, камикадзе-билд на ближней атаке), а также шары, которые отбиваешь, как в арканоиде. В конце можно ещё писать какая ветка пройдена и каким героем:
Это я прошёл 4-ю без прокачки с хилящимся героем на сомнительной сборке. 3 глаза с щитами самая сложная часть, ну и две волны обычных врагов до этого. А у финального босса всего одна фаза и можно безопасно отсиживаться внизу, просится какая-то дополнительная ловушка/атака против этого.
Ещё пробовал вторую ветку и умер в самом конце на боссе (не было щита). Но на третьей удалось собрать практически идеальный билд (герой с повышением урона):
Спасибо за отзыв! Я уже думал добавить ачивки за прохождение без прокачки и без щита/хп-регена. Раньше было тяжеловато, а с новыми абилками я что-то так и не попробовал. Думаю, сейчас легче, а улучшенные данные вообще мега имба, надо их понерфить) Буду тестить!
Когда здоровья мало с большей вероятностью выпадают лечилки, вместо чего-то более полезного.
Улучшенные данные - хороши, но рисковые. Идеально получить их в начале забега, но будешь слабее, возможно меньше получишь опыта с врагов, ну и должно ещё повести с выпадением 3-5 наград. Думаю, можно поменьше ускорять добычу или даже вообще её не ускорять.
Показалось, что в принципе бонусы тогда выпадают чаще, чуть ли не с каждого врага.
Нет. Там колдун на выпадение бонуса, он уменьшается только удачей.
Я обещал стрим по Gunfield, сегодня в 20:00 по МСК стартану!
https://www.twitch.tv/mrrubel
Запустил стрим
https://www.twitch.tv/mrrubel
https://youtube.com/live/iYrDYJ0COAM
Погнали!!!
Добавил в игру бессмертие на одну секунду после выбора навыка.
Класс! Стрим прошел не зря