Первая игра - Garpunger - Соло в геймдев
Хукаешь, тянешь, а если постараться - рвёшь противника пополам.
Первая работа была кроссворды, но мне как-то их сложно отнести прямо к игре, по этому буду считать что Garpunger - это первая игра.
Начнем с того откуда взялась идея и с чего можно вдохновляться и брать концепции.
Где брать идеи для игр
1. Пересечение жанров + сеттинг
Самый банальный способ, но не упомянуть его нельзя. Скрещиваем: кликер + tower defense + сеттинг Фоллаута = получаем новый вариант.
2. Инверсия концепции
Тут уже поинтереснее. Берём привычный концепт - тот же TD - и делаем наоборот: юнитов посылаем мы, а башни строит игра. И мы думаем, как пройти эту защиту.
3. Народное творчество
Самое интересное. Смотрим игры, в которых есть хороший редактор, и присматриваемся к народным работам - это уже доказало свою эффективность: Dota 2 - бывшая кастомка варика, да и TD как жанр, я думаю, в варике и сформировался. Такой редактор есть и в Roblox - а если знаете ещё примеры, накидайте в комментах.
Дальше метод простой: берёшь популярную кастомку - смотришь, есть ли она на рынке отдельной игрой - если нет, пакуешь в свой сеттинг и делаешь.
Вот как раз так и началась моя затея с первой игрой.
Pudge Wars и первый прототип
Была такая карта в War3 - Pudge Wars. Две команды, речка посередине, у всех хуки. Хукаешь, тянешь, рвёшь на кусочки. Легкий концепт, фановый гемплей.
И вот я просто вспомнил про неё и подумал: блин, а прикольная же была механика. Сел и собрал прототип игры в браузере за вечер. И она сразу, с ходу, получилась прикольная - зацепила простотой и скоростью реализации, и я на несколько дней окунулся полностью: механики, текстурки, роботы, звуки, главный персонаж и тд.
Получилась мини-игра. Сначала хотел потестить с друзьями но вроде бы сделанный сетевой режим не завелся сразу, оказалось там немало геморроя, просто не получится и тест с друзьями отложил, но дальше я увидел еще одну проблему.
Скрытая проблема
Делал игру спонтанно - не собирался прорабатывать, но затянуло. И только углубившись, понял главное: в такое надо играть онлайн. С ботами - не то, с друзьями по идее - кайф. А онлайн-игра - это ловушка: в ней должен быть постоянный онлайн, иначе она мертва.
Когда я эту проблему хорошенько разглядел, решение показалось таким: сделать кампанию. Чтобы можно было играть одному, чтобы было погружение, чтобы площадки типа Яндекс Игр дали трафик - а из кампании игрок сам захочет в онлайн.
И я пошёл делать кампанию, не доработав мультиплеер. По дороге появилось много классного…
Кампания: живой мир из мелочей
Сделал систему просчета путей, скрипты поведения. И вот из таких скриптов игра начала оживать.
Стреляешь хуком в толпу пехоты - и они разбегаются в стороны.
У пехоты настраивается разброс пуль, у каждого свой рандом в скорости перезарядки - стреляют не как метрономы, а вразнобой, живо. Их можно раздавить роботом - на ногах остаются следы крови.
Танк поворачивает башню независимо от корпуса, и ездит не "как в обычных играх", а с весом - чувствуется, что едет махина.
Способности у юнитов раздаются с рандомом: у кого-то из заспавнившихся есть граната, у кого-то нет. Подбегает толпа - скорее всего, прилетит одна граната. Может, две.
Еще сделал БМП-логистику: из бараков спавнится пехота, БМП подбирает партию (до пяти), везет и высаживает к угрозе, и едет за следующей партией (автоматическая доставка). Выглядит это интересно, о чем и говорил что интересно видеть систему поведения в играх. Эта тема кстати для отдельной статьи, что интересно в играх, думаю напишу ее позже…
Чтобы всё это собирать, пришлось строить инструменты. И вот тут я упоролся.
Упоролся: редакторы
Я сделал целый редактор миссий: юниты, постройки, декорации, рельеф, заграждения путей и тд.
Дальше - редактор эффектов. Смотрите логику: что такое граната? Снаряд. Что такое снаряд? Эффект. А эффект - это частицы, собранные из фигур. Значит, нужен редактор эффектов и редактор фигур. Эффекты вешаются на точки (нога, голова, башня, тело) и на триггеры срабатывания - и из этого получается конструктор способностей.
Самому лепить каждый эффект руками - долго. Поэтому что делаем? Правильно - нанимаем работника. Хорошо, что не в офис) Сажаю за редактор ДипСика: описываю словами, какой эффект нужен, - он генерит JSON, эффект появляется в игре. Потом можно подкрутить руками: фигуру, точки прикрепления, разброс.
(Кстати, этот модуль думаю завернуть и выпустить отдельно - может кому-нибудь пригодится. Если нужно такое - напишите в комментах.)
Бафы - состояния, которые накладываются на юнитов. Тут у меня back to roots: это всё Blizzard придумали. Гениальные ребята собрали для Warcraft 3 настолько логичный редактор, что когда сам начинаешь строить свой - приходишь ровно к их архитектуре. Думаю, поэтому Warcraft и жил так долго и до сих пор в него играют люди.
Ладно, инструменты. А про что сама кампания? Держите спойлер.
Сюжет (небольшой спойлер, но пофиг)
Роботы-гарпунгеры были разработаны для работы в труднодоступных местах - гарпуном они притягиваются куда надо. Экспериментальный робот отправлен на миссию: военная база, которая что-то охраняет. Что - никто не знает.
Ты разносишь базу и проникаешь в секретную лабораторию - причем проникнуть надо правильно, перетянувшись на другой берег через механику якоря.
А в лаборатории ведётся эксперимент. Ты встречаешь крутящуюся центрифугу с трупами - тут явно происходит что-то стрёмное.
Из центрифуги вылазит мясной шар - слепленный из тел - и начинает кататься по базе. Его надо уничтожить. Суть в том, что база приняла сигнал из космоса, в котором была инструкция. Её решили расшифровать и собрать. Эксперимент начал выходить из-под контроля - особенно когда пришли мы со своим гарпуном.
Дальше выяснится, что таких баз по миру не одна, и начнётся дичь - но так глубоко спойлерить не буду. В битве с шаром робота засасывает в воронку, которая перемалывает ему ноги. Остаётся корпус. И тогда из робота выбирается человек - тот, кто сидел внутри, - и спускается в подземелье лаборатории.
Немного меняется концепция нужно ходить человечком (вид сверху), по лаборатории, там жуткие эксперименты и некоторые мутанты выбрались, где-то надо отстрелить, где-то убежать, затем находишь одну сущность. Приносишь её к роботу, сущность залазит внутрь - и вместо ног у робота вырастают щупальца. Меняется даже физика управления: было механическое - стало плавное, как будто ты и правда на щупальцах.
Вот такой градус безумия я хочу держать всю кампанию - чтобы игра крошила шаблонные представления о том, что в ней должно происходить.
А потом я посмотрел на объем оставшихся работ и сказал себе: ё-моё. Надо что-то выпускать иначе это все превратиться в долгострой, хотя затевалось ведь по фану.
Разворот: сетевая часть
Решил кампанию - на паузу. Углубляюсь в мультиплеер: сделал матчи, рейтинг как в Доте (потому что рейтинг - это награда после матча) и систему прокачки - без неё скучновато: просто тянуть и хукать прикольно, но мало.
Прокачку я пересобирал. Сначала все улучшения брались с речки - плывут лутбоксы, вылавливаешь.
Потом был магазин. Не понравилось. В итоге переделал на знакомую игроку механику: в матче копится опыт, при смерти открывается окно - выбираешь одну карточку из трёх.
И вот тут меня понесло. Опять)
Ловушка: "эти идеи должны увидеть мир"
Знаете этот момент, когда надо остановиться, а ты думаешь: ну у меня же такие идеи, их же надо сделать, они должны увидеть мир? Это ловушка. Я не понимал, сколько контента себе закладываю.
Я выгрузил из головы всё - получился пул под 40 способностей. К ним добавил бафы - состояния, которые ещё и взаимодействуют между собой. Протащил робота через речку - он мокрый. Мокрый - хороший проводник: ударь по нему электричеством - оглушение. Масло + огонь - горит сильнее.
И это реально классно: в игре об этом нигде не написано, ты просто видишь это эффектами - и оно даёт вау эффект: "о, ничего себе, так сработало!" Изучать систему интереснее, чем читать туториал. Мне кажется, современному игроку интересно именно это - копаться в системе, которая логично работает.
Но у каждой способности - иконка, эффекты, взаимодействия, баги. Всё это надо сделать, проверить и обслужить. Вот на этом я сейчас и застрял: устал перебирать способности. С одними иконками сколько мучился - не все устраивают до сих пор, но выглядит уже неплохо.
Не бойся выкидывать сделанное
По дороге был ещё один поворот. Сначала я сделал архетипы - Кабан, Цапля, Скорпион, Угорь - стили игры, под каждым свой флаг, почти кланы. Сделал. Придумал. А потом понял: это сужает. Получается выбор без выбора - ты всё равно качаешь одну линейку, потому что иначе нелогично.
И я это выкинул целиком. Хотя уже было сделано.
Думаю: если сделал неправильно - ничего страшного вернуться и переделать. Страшно тащить неправильное дальше.
Карточки должны быть сочными
Отдельно хотелось, чтобы сам выбор карточек был приятным. Вот в Hearthstone: берёшь карту и чувствуешь - "эпическая", "легендарная", кайф. К этому и веду: редкости, выделение, добивание эффектами.
Быстрый тур по админке
Нравится когда в админке всё наглядно и всё можно подкрутить - это дает ощущение контроля и меньше запросов к подписке за 200 евро.
Робот: предпросмотр, загрузка ассетов, точки прикрепления эффектов, состояния (в крови, в грязи). Точки попадания: в спину урона больше, лоб держит. Настройки хука - как летит, это же главная механика.
Юниты - предпросмотр, внешний вид в состояниях, способности, смерть, эффекты, звуки. Постройки, декорации, предметы - по аналогии.
Ещё люблю систему промтов для артов прямо в админке - чтобы быстро генерить иконки и модельки в едином стиле.
Про интерфейс - сначала я делал красивые "сеты" оформления. Выходило неплохо, но долго, перегруженно и трудно менять. Плюнул, сделал HTML-вёрстку со стилизацией - и не жалею: интерфейс вообще надо делать в конце. Сколько раз я переставлял эти предметы и блоки, чтобы было удобно... Сейчас не идеально, но уже неплохо. Под мобилку ещё адаптировать отдельный вид искусства...
Примеры способностей - как это играется
Огненный хук - хук оставляет огненный след и поджигает всех, кто в него попал, плюс цель.
Несколько примеров:
Широкий зацеп - сюрикен на хуке, больше радиус попадания.
Укрепленный тыл - броня на спину (вешается обвес визуальный).
Кровавый хук - кровотечение при протаскивании.
Вампиризм - часть урона протаскивания возвращается в здоровье.
Дробилки - навес: притянул врага вплотную - он получает.
Камикадзе - тебя убили, но ты рванул и забрал кого-то с собой.
Вампиризм - часть урона протаскивания возвращается в здоровье.
Дробилки - навес: притянул врага вплотную - он получает.
Камикадзе - тебя убили, но ты рванул и забрал кого-то с собой.
Есть командные:
Лечащий хук - лечит союзника при протаскивании,
Капельница - лечит при попадании.
Обратный заброс - перекидывает врага за спину.
Иглы - отравляют того, кто хукнул тебя.
Есть сброс КД хука за убийство, метки под следующий удар, щиты, импульсы, прыжки, турели и тд.
Планируется, что всё будет с чем-то стакаться, что-то - друг друга контрить.
И отдельно предметы: они одноразовые - мина, граната, баррикада - и их вытаскиваешь с речки.
Где я сейчас
Создание игры затянулось уже на месяц, и начинаешь сомневаться, что она вообще кому-то нужна, - и пытаешься добавить ещё фишку, и ещё одну. Но как будто надо вовремя остановиться и доделать что есть, чтобы хотя бы понять надо ли оно людям.
Может кто-то из геймдева прочитает статью и посмотрит на игру как на питч, я буду рад если игрой заинтересуется издательство)
По этому думаю доделаю игру и буду запускать плейтест или сразу отправлю на всем известные площадки для игр, присоединяйся в мой ТГ:
Буду рассказывать там как как я делаю игры)