"Double" - первый сюжетный инди проект. Часть 1: Генерация идей, первые ошибки и отзывчивость комьюнити.

Говорить о разработке игр почти всегда интереснее и проще, чем их разрабатывать. Поэтому сегодня мы будем только разговаривать. А расскажем мы о собственном первом опыте в геймдеве – сюжетном экшн-квесте Double: о подводных камнях и особо важных моментах, на которые стоило обратить внимание с самого начала.

"Double" - первый сюжетный инди проект. Часть 1: Генерация идей, первые ошибки и отзывчивость комьюнити. Разработка игр, Gamedev, Инди, Сюжет, Триллер, Длиннопост, Психоделика

Началось все с того, что в далеком городе на востоке России Комсомольске-на-Амуре встретились два человека, которые давно горели желанием разрабатывать игры. Оба имели время, чтобы заниматься этим на повседневной основе и были готовы работать безвозмездно более года – в последующем это сыграло с нами злую шутку, когда нам понадобилась помощь третьего человека в команду: найти такого же свободного и самоотверженного, да еще и с опытом рисования и анимации оказалось невозможным, но об этом позже. И решили мы взяться за «первый, тестовый проект», назвав свою мини-команду "Tomato Fantasy Games". Как нам казалось, месяца 2-3 хватит на первый проект, просто чтобы прощупать геймдев, релизнуться в Steam и получить стартовый опыт. Но все пошло совсем не так.

"Double" - первый сюжетный инди проект. Часть 1: Генерация идей, первые ошибки и отзывчивость комьюнити. Разработка игр, Gamedev, Инди, Сюжет, Триллер, Длиннопост, Психоделика

Идея и сеттинг для игры пришли довольно быстро. Методом мозгового штурма были сгенерированы несколько идей и отобрана самая, на наш взгляд, незаезженная и интересная – период Кубинской революции 1950-х. В итоге мы рассчитывали сделать небольшой сюжетный 2д квест с элементами экшна. В качестве движка выбрали довольно простенький Game Maker Studio 2, так как лицензия на него уже имелась, как и начальные навыки работы с ним. И понеслось…


Генерация идей.


Это был самый воодушевляющий этап разработки. Когда ты сидишь с напарником, и вы генерируете десятки и сотни крутых фич для игры, представляете вместе, как это будет здорово, какой будет хитяра – воображение строит приятную картинку, проходит локации, сюжетные повороты и использует все фичи геймплея по полной. Попутно смотрите на референсы из других игр (мы полагались на Valiant Hearts и Fran Bow).

"Double" - первый сюжетный инди проект. Часть 1: Генерация идей, первые ошибки и отзывчивость комьюнити. Разработка игр, Gamedev, Инди, Сюжет, Триллер, Длиннопост, Психоделика

Было исписано много бумаги. Все геймплейные элементы легко укладывались в рамках игры, и на словах с каждым часом проект становился только лучше. Спецспособности героя, визуальные решения (следы от пуль, лучи света, сквозь пробитые пулями дыры в стенах и дверях, уровни с элементами платформера – все это казалось нам суперкрутым для нашего проекта). Реальность, к сожалению, оказывается не такой радужной – игру еще предстоит разработать.


Конечно, у нас были ошибки: мелкие, которые тут же исправлялись и крупные, которые заставляли откатывать процесс разработки на недели назад и начинать сначала, проделывать рутинную работу в течение недели заново (рендерить по 24 анимации для каждого солдата, когда ты заметил баг в его камуфляже на этапе тестирования геймплея – для нашего художника это было не лучшее время, а про то, как движок ломал наши проекты, а ближайший бэкап был 2 недели назад я вообще не хочу вспоминать). И вот, мы решили вспомнить и озвучить ошибки, которые совершили за время первого проекта, старясь сделать текст интересным, как еще не начавшим, так и уже разрабатывающим свои первые проекты людям.


Первая ошибка – мы не провели анализ рынка: какие жанры сейчас популярны или привычны игрокам. Мы решили, не имея опыта, сделать что-то свое, оригинальное в плане геймплея. Не имея в штате профессионалов, и занимаясь, по сути, первым проектом – это, с огромной долей вероятности, приведет к малому охвату аудитории. Вот первый урок – анализируйте рынок. Купите подписку на SteamSpy и смотрите, что из небольших инди проектов сейчас зашло, что вам под силу повторить или даже сделать лучше. Всегда изучайте игры глубоко: смотрите даты начала разработки и релизов, смотрите, кто издатель, как он управлял ценой за все время продаж. Анализ - это мощнейший инструмент, который мы не использовали, когда начинали разработку Double.

"Double" - первый сюжетный инди проект. Часть 1: Генерация идей, первые ошибки и отзывчивость комьюнити. Разработка игр, Gamedev, Инди, Сюжет, Триллер, Длиннопост, Психоделика

Наша вторая грандиозная ошибка – мы не определили заранее визуальный стиль. Сейчас при обилии игр, в основном, их выбирают по одежке (посмотрите на Gris, The Witness – платформер и головоломка, которые продаются благодаря тандему визуала и музыки). Потенциальный игрок заходит в Steam и видит превью игры, она его зацепила, и он кликает на нее. Первое что он видит: трейлер и скриншоты. Если при просмотре эти трех элементов игрока не зацепил внешний вид игры – он потерян. Некоторые сразу листают на отзывы, но, если проект еще не в релизе – о каких отзывах может идти речь. Перед разработкой желательно сразу же нарисовать арты, подобрать пачку референсов и определиться с четким, а главное единым для понимания каждого члена команды визуальным стилем игры. Иначе вы рискуете создать нечто аляпистое, своеобразное, без ограниченной и органичной палитры – что-то, что нельзя узнать, посмотрев на скриншот. Урок номер два – сначала стиль, потом геймплей. Многие могут спорить с этим, позиционируя геймплей выше картинки, и они будут правы, но мы в первую очередь ориентируемся на разработку игр, рассказывающие историю, а ничто так не дополняет историю, как картинка и музыка.


Это, наверное, две самые важные и критические ошибки на этапе генерирования основной идеи игры. Мы просто пришли к Кубинскому сеттингу и начали рисовать спрайты для заполнения уровней – ну это ли не чудесный подход к разработке игры? Если я начну описывать каждый наш неверный шаг – это выльется в анти-методичку по генерации идей.


Первые игровые билды и распространение.


Как настоящие, самоуверенные в себе люди, мы не изучили процесс разработки игры и просто начали это решать это дело «в лоб». Первое, что мы решили сделать, это рабочую демо-версию с основными фишками геймплея и небольшим раскрытием сюжетной линии. А уже потом ее расширять. Как выглядело это чудище, можете посмотреть на скриншотах. Честно говоря, мы испытывали небольшой восторг от того, что все это вообще работало, как настоящая игра: распаковка, запуск *.ехе файла, небольшой лаг при загрузке и героем можно было ходить в стороны и даже присаживаться за укрытия, а позже и стрелять.

"Double" - первый сюжетный инди проект. Часть 1: Генерация идей, первые ошибки и отзывчивость комьюнити. Разработка игр, Gamedev, Инди, Сюжет, Триллер, Длиннопост, Психоделика

На этом же этапе мы начали рассказывать об игре в социальных сетях. В основном, это был Твиттер. От чего-то мы решили продвигаться только в зарубежной части интернета. Все наши попытки позже влиться в русский сегмент не увенчались успехом: то у нас не хватит времени писать посты для русских соцсетей, то выложим в русский пост трейлер с английскими субтитрами, да еще и аудитория восприняла в штыки проект из-за слабой визуальной части – все складывалось таким образом, что русский сегмент стал для нас почти непреступным. В итоге мы сконцентрировались на Твиттере: выкладывали туда первые скриншоты, концепты, писали истории о себе и т.д. Вы представляете то чувство, когда ты видишь первых людей, заинтересованных в твоем произведении? Это нечто! Правда, их было совсем немного, но даже это было сродни чуду. Мы нашли очень много людей, которые помогали нам на первых порах за простое «Спасибо». Композиторы, пруфридеры на различные языки, художники, даже сам Даррен Корб (композитор таких игр, как Bastion, Transistor, Pyre и т.д.) связался с нашим композитором/программистом/автором истории и поболтал о музыкальном стиле игры и дал советы в разных направлениях. В такие моменты по понимали, что даже с такими профессионалами можно выйти на связь ради просто совета или разговора на разные темы. От этого кружилась голова.


Демо-версия постепенно расширялась, и на ее прохождение уходило уже более часа. В этот момент мы поняли, что нам нужны тестеры и как можно более не предвзятые (в основном, чтобы не хвалили наш проект). И здесь мы столкнулись с недостатком из первого этапа – создание оригинального геймплея. Мы попытались создать довольной новый для игроков геймплей, не имея опыта. Вам может показаться, что «оригинальный геймплей» звучит так новаторски и интересно. На самом деле мы просто использовали нехарактерную для шутеров с видом сбоку механику стрельбы с использованием спецспособностей (телепорт, заморозка врагов, супер-точность) и укрытий, которая показалась нам интересной. На самом же деле это была очень топорная и медленная механика, которую в последствии пришлось упростить. Это все равно, что построить с нуля самолет, имея под рукой лишь школьное образование – другими словами, у нас не было опыта в создании сложных механик. Тестеры, спасибо им, разнесли наш геймплей в пух и прах, и мы стали его улучшать. Без их субъективного мнения, мы бы так и оставили оригинальную механику.

"Double" - первый сюжетный инди проект. Часть 1: Генерация идей, первые ошибки и отзывчивость комьюнити. Разработка игр, Gamedev, Инди, Сюжет, Триллер, Длиннопост, Психоделика

И вот тут, как прыщ на лбу или даже фурункул, вылез еще один наш недосмотр. Game Maker Studio 2 ориентирован скорее на пиксельные игры со спрайтами низкого разрешения. Это связано с тем, что каждый пиксель спрайта в проекте занимает 4 байта! Мы так и не смогли найти решение, чтобы изменить этот алгоритм, но для наглядности этой проблемы я просто приведу пример: один кадр анимации солдата весит на моем компьютере 250 килобайт в формате PNG с, примерно, половиной прозрачных пикселей, после импорта этого спрайта в GMS 2 он меняет свой вес на, около 500-750 килобайт. Такая странная конвертация действует на все спрайты в проекте, существенно заполняя оперативную память, не имея, на самом деле на то причины. Наши изображения и анимации создавались в довольно высоком разрешении – что привело к сильным лагам и вылетам демо-версии даже на мощных машинах (16 гб ОЗУ и GTX 1070 8Gb не могли выдержать этот двумерный ад). Узнали мы это из практики, так что вот еще один урок – читайте форумы и опыт разработок на той платформе, на которой собираетесь разрабатывать. Возможно решение есть, и мы его просто упустили, но это привело нас к тому, что нам пришлось рендерить заново все анимации в более низком разрешении, уменьшать количество уникальных спрайтов и ограничивать количество кадров в анимациях – это было трудным решением, но мы прогнулись под условия среды, в которой работали. В идеале надо, конечно, создавать свой движок, но не все инди готовы на это. На этапе планирования как можно полнее изучайте возможности движка, который будете использовать. И сравнивайте их с тем, что требуется.

"Double" - первый сюжетный инди проект. Часть 1: Генерация идей, первые ошибки и отзывчивость комьюнити. Разработка игр, Gamedev, Инди, Сюжет, Триллер, Длиннопост, Психоделика

Дальше пошли первые контакты с зарубежными «раскрутчиками». Там случилось несколько интересных историй о доброкачественности частных рекламщиков и удивительных условиях зарубежного издателя. Все это читайте во второй части, которую, мы надеюсь, напишем скоро!

Ах, да. Double уже вышел в предрелизной версии, игру можно пройти целиком. А релиз намечен на 15 марта.

Лига Разработчиков Видеоигр

7.5K поста22.6K подписчика

Добавить пост

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

ЗАПРЕЩЕНО:

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

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

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


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

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

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

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

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

Вы смотрите срез комментариев. Показать все
1
Автор поста оценил этот комментарий

Вопрос к автору. Насколько помню, даже в GM версии 1.(что-то там) была возможность отключать объекты, которые находятся вне области экрана, что значительно влияло на потребление оперативы и быстродействие игры. Таааак вот и вопрос, сколько ж у вас объектов и спрайтов на экране единовременно? О_О

раскрыть ветку (2)
1
Автор поста оценил этот комментарий

Ответ прост. Мы пользуемся этой возможностью. Но, чтобы "отключать" и "включать" объекты на уровне их, соответственно, надо загружать и выгружать из памяти. В нашем случае это приводило к подлагиваниям прямо по ходу уровня, что неприемлемо.

Поэтому, перед каждым уровнем и существует загрузка, во время которой все спрайты с этой локации заносятся в видеопамять. И выгружаются из нее во время следующей загрузки уровня.

Спрайты у нас максимум разрешения 1080р для задников и больших объектов. И их много, потому что уровни длинные. Вот и приходится уменьшать количество уникальных задников, чтобы занималось поменьше памяти. До оптимизации задников игра могда в первой локации занимать по 4гб видеопамяти. Глядя на качество ее рисовки, встает закономерный вопрос, как?)

Например, разработчик Hollow Night у себя на патреоне говорил, что вообще не занимался оптимизацией игры, а она создана на Unity. И игра идет безупречно даже на старых ПК с интегрированной видеокартой.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Ни разу на первом GM не упирался в такую проблему. Но и 1080p даже не пытался) Сейчас на Unreal изредка ковыряюсь. Ребята писали собственные библиотеки для подгрузки ресурсов.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку